OK I think this is all wrapped up. Let's see if I can summarize it all for any who follow.

AHCI is disabled. - This is probably what started the whole thing.

Don't use hide() unhide() in grub/menu.lst - This is what got me in trouble with the partition type ids.

Windows partion has BOOT flag - I'm not sure this is meaningful, as Ubuntu booted without this scenario.

I followed the wiki instructions where they suggest using dd to archive and replace the master boot record. This is probably spot-on, and I only ran into trouble when I didn't understand why Windows wasn't booting (AHCI was enabled) and started trying the grub commands posted in another section of that same wiki page, and many other places 'round the web, which included use of hide() and unhide() and that's where the partition ids were changed as a side-effect.