Thanks a lot for this, *nearly* got me working but there are some errors.
1. The vmlinuz and initrd.img files referenced in grub are given as /boot/vmlinuz etc. The file in /boot has a full name with the version so its not found by grub (there is a link in root which is just vmlinuz). I fixed this by using the full name (/boot/vmlinuz-xxxx) in the grub file, I guess you could just point to root too.
2. I couldn't run update-initramfs as specified, I had to do the following first before chroot, to bring in some other dependencies.
sudo mount --bind /dev /mnt/debian/dev sudo mount --bind /proc /mnt/debian/proc sudo mount --bind /sys /mnt/debian/sys
3. The comment "make sure that you change the 'root=/dev/sda2' line to 'root=/dev/mmcblkp2'" should actually say /dev/mmcblk0p2
4. Even after I built the new initramfs after adding mmc, I'm not sure this is needed. When it boots on the Minnow modprobe says it can't find mmc, but it boots off the sdcard anyway
Lastly, I had to exit chroot to do the grub file changes towards the end of the process.