Have you considered using isohybrid, part of syslinux/isolinux?

This means you create a single image, which can either be used for CD boot, or can be directly copied onto a USB stick (or hard...