el problema es muy sencillo, y fue al instalar Vista sin hacerlo en la partición activa. Verás, un disco duro tiene dos tipos de puntos de arranque, uno en la cabecera del disco duro (MBR), y otro al comienzo de cada partición. Los sistemas Windows pasan completamente del MBR, e instalan su arranque en el sector de arranque de la partición activa, que no es más que aquella que esté designada como principal cuando no hay arranque en el MBR.
Cuando instalaste XP, se creó una partición que por ser la única se designó automáticamente como activa, y después vino Vista que se instaló en su propia partición, pero como nadie dijo que hubiese que cambiar la partición activa, metió su arranque en la partición activa original, la de XP, y se configuró para dar a elegir qué SO arrancar.
Entonces te cargaste la partición de XP para crear las de Ubuntu, por lo que perdiste el arranque de Vista y cuando entró Ubuntu, se encontró con un sistema sin ningún tipo de arranque por lo que no detectó Vista y se metió su propio arranque.
Ahora, le has dado a GRUB (el arranque de Ubuntu) la ubicación de la partición de Vista, donde debería estar su arranque... pero no está porque se instaló en la partición de XP que era la activa, y se perdió al borrarse ésta.
Lo que tienes que hacer, es usar algún programa para marcar la partición de Vista como partición activa (creo que parted o gparted te deberían valer), arrancar el CD de instalación de Vista, y desde la consola de recuperación, meter el comando "fixboot" (pero no fixmbr como suele ser habitual, puesto que fixmbr se cargaría GRUB), y ya con eso debería funcionar.