I just did a clean install of grub (the version in natty) to an empty partition using grub-install and manually created grub.cfg and there the timeout works fine.
I just copied the part generated by 01_hidden_timeout from the old to the new grub.cfg and left out everything generated by 00_header, so I think the reason why my fix from comment #1 didn't work any more has to do with the output of that file. Maybe someone else can try this out and help me narrow it down further.
I just did a clean install of grub (the version in natty) to an empty partition using grub-install and manually created grub.cfg and there the timeout works fine.
I just copied the part generated by 01_hidden_timeout from the old to the new grub.cfg and left out everything generated by 00_header, so I think the reason why my fix from comment #1 didn't work any more has to do with the output of that file. Maybe someone else can try this out and help me narrow it down further.