Kernel isn't a big deal, Colin. An entire filesystem should boot the same when exported. If you rsync / elsewhere, twiddle a few knobs like network config then reboot, you should be able to move an Amazon image anywhere. I have successfully done this between disparate virtualization providers, and Xen to dedicated.
Amazon is unique in that they use PV-Grub everywhere to boot a customer filesystem kernel (newer behavior), whereas on other virtualization providers like Linode, the kernel is selected at domain creation time by the hypervisor, and loaded from the hypervisor's filesystem (not the customer). You can use PV-Grub but it's opt-in, not opt-out.