I find it interesting that openSUSE uses the disk by ID style. I think that then avoids the issues I have with chain loading.
I have one small 160GB drive I converted to gpt to learn about it, and I have 3 drives and several flash drives that I can boot from.
I found with Ubuntu's grub2 that whatever drive I boot from it is hd0, and if booting into the gpt drive I need the (hd1,gpt2) style for gpt partitions or from the gpt into the MBR (hd3,msdos12). So when I chainload to another hard drive's MBR my standard 40_custom is really only correct when booted from one drive as the drive numbers change if I use the smae 40_custom on installs in another drive. Or when I boot sdc it is hd0, sda is hd1 etc.
The newest grub 1.99 now uses /dev/sda as an alternate to hd0, but we have seen users where the BIOS does not always bring drives up in the same order.