I assume that Linux HD is Plugged in as Primary, Windows OSes HD as Secondary/Slave. You are using Ubuntu's Boot Loader because you have installed it in the last.
Boot up Ubuntu, press Alt+F2 and type this
Code:
gksu gedit /boot/grub/menu.lst
Add this :
Code:
title Windows Boot Loader
rootnoverify (hd1,0)
map (hd1) (hd0)
map (hd0) (hd1)
chainloader +1
Save file and reboot machine. Select Windows Boot Loader option in GRUB Menu. It will invoke Vista boot loader having options to boot Vista and Windows XP.
In case it doesn't work, execute this in Ubuntu's Terminal :
Post output here.