bueno la idea es carcana, pero se te esta pasando que la referencia que estas usando en la funcion esta llamando a lo que cotejo en la busqueda que en este caso es WEBSITE_TITLE pero esto no indica que estes sustituyendo ese valor por la constante definida en tu codigo. asi que tomando en cuenta este detalle tienes que cambiar tu codigo a algo asi:
Código PHP:
define('WEBSITE_TITLE', 'Mi pagina web.com');
$result='<title>{WEBSITE_TITLE}</title>';
$result=preg_replace("`\{(.*)?\}`i",WEBSITE_TITLE,$result);
echo htmlentities($result);
Si notas estoy llamando directamente a la constante.
Saludos.