I agree the current GRUB 2 path is too complicated.I don't know if the proposed patch has functional regressions, but the code gets inconsistent in the sense that grub2 functions like grub2_write_chain() are kept but not used.
Another version of this, with the same issue, is on http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/oneiric/grub-installer/oneiric/revision/96#grub-installer