Add this to your menu.lst file:
The first entry will try to boot from the 1st partition of the 1st disk, and the second will try to boot from the 2nd partition of the 1st disk. It's a little trial & error, but logic follows that if Ubuntu is on your 3rd partition, Vista is on the 1st or 2nd.
title Windows Vista (1)
title Windows Vista (2)
Your error is likely being caused by GRUB incorrectly identifying your recovery partition as Vista's partition. Once you identify which of those options boots to Windows you can just delete the other one.