Try using hook parse_templates. If it still doesn't work, try this as a test:
Code:
ob_start();
//require_once('/home/XXXX/public_html/Web/Kellys_New_Menu.php');
$kellysmenu = "This is Kelly's Menu";
ob_end_clean();
vB_Template::preRegister('header',array('kellysmenu' => $kellysmenu));
BTW, you definitely want to use {vb:raw kellysmenu} in the template (assuming you have some version of vbulletin 4).