Sometimes, when Windows is on a non-first drive in grub.conf, it helps to use the map GRUB menu command to virtually swap it back to first for Windows' sake. It's a harmless thing to try. Like this...
title Windows Vista
map (hd0) (hd1)
map (hd1) (hd0)
The space after "map" and between the middle parentheses is important.