It's not an Amazon problem, it's a limitation in the DNS specs.
It's not really a limitation, per se. It's intentional behavior. Most people just use CNAMEs to as a sort of "A record redirect", but really they're for all records. You're saying "the canonical name for foo.com is blah.bar.com", and that means for everything: A, MX, NS, SOA, etc.
Yes, Heroku was another "culprit" of this kind of behavior that I would guess many people fall prey to. The worst part of it is how you will get some/most emails and some will just fall through the cracks. Unless you have a case like mine where you know an email should be coming and it's not then you can easily not know this is happening and be dropping emails.