If you want to really fix this problem, what I typically do is only create a /boot partition for the first linux distro and install that grub to the MBR. Then for all the other distros, I just install grub & /boot to the / partition. Then use the first grub to chainload the second one.
For example, in your case, you would use SUSE's grub to chainload FC's grub. Then if you update FC's kernel, it will update the FC grub menu.lst. But Suse's grub doesn't care because it's going to load FC's grub.
Your partitions might look like this
Code:
/dev/hda1 /boot -- Suse's boot
/dev/hda2 /swap
/dev/hda3 / -- Suse
/dev/hda5 / -- FC5
/dev/hda6 / -- Ubuntu
A typical grub entry (for your Suse grub menu.lst) looks like
Code:
title Fedora Core 5
root (hd0,3)
chainloader +1