I don't know if this is your problem, but I just discovered a solution to the error 15 problem and maybe Google can help someone.
Grub 0.97 at least, maybe earlier, changed the location or method of saving the default. When it reads menu.lst and sees 'savedefault', it looks for .../grub/default which does not exist because 0.91 that I was using stores it somewhere else or someother way. Running 'grub-set-default 0' will let it boot as will removing 'savedefault' from the entry you are trying to boot. It took months to find this