EDIT 2016-01-09:
Download multimbr.7z for source code and binary build. Use mbr_8G.img to write onto a 8G usb drive. Use mbr_16G.img to write onto a 16G usb drive. etc. After you have done the write, you MUST correct the partition-length field(4 bytes at offset 0x1CA) of sector number 0 and the BPB-total-number-of-sectors field (4 bytes at offset 0x20) of sector 63. You may use diskgen to automatically correct the partition-length field(4 bytes at offset 0x1CA) of sector 0. But diskgen cannot correct the BPB-total-number-of-sectors field (4 bytes at offset 0x20) of sector 63. So you may do it by hand. Both of the two fields should have the same value. After all done, you may place a menu.lst or a grldr of your preferred version in the root directory of the usb drive. If grldr exists in the root directory, it will gain control at startup. If grldr does not exist in the root directory but a menu.lst exists in the root directory, then the menu.lst will be run by the builtin grldr. The builtin grldr is from grub4dos-0.4.6a-2015-12-31.7z, that is, the latest version for now.