the problem lies with xp. it overwrites the vista bootloader. get rid of xp and the partition. then follow this guide.
How to dual boot Vista and XP (with Vista installed first) -- the step-by-step guide with screenshots
and good luck

ps why do you want to do this in the 1st place?