Are you running the one of the huge kernels ? If so you should install the generic kernel as the huge ones are just a temporary measure to get you started.
Make sure you have downloaded and insttalled the updated version of mkinitrd available here
then have a look at /boot/README.initrd which gives advice on creating an initial ram disk. You'll have to add an entry to /etc/lilo.conf and re run lilo.
Having done all this mkrescue should work. This is due to mount reporting /dev/root as the root filesystem device when running the huge kernel and the correct device when the generic is ran.