Here's a guess - the advice is free and worth every penney......
Perhaps the Windows XP boot loader doesn't recognize the Vista boot loader and overwrote its Master Boot Record. The solution might be to load XP first, then load Vista. I expect that Vista will see and recognize the XP boot loader as a legitimate Microsoft boot loader and not overwrite it.
CAVEAT: I don't know Vista at all, but do know that in the old NT 4 days install sequence for a multiboot Windows machine was key.