Because the source mail server forwards the message on, it loses control of it -- the most it could do is send a "please delete this message I sent you and forget I sent it" message to the mail server at the destination domain. The destination mail server wouldn't be obliged to act on it -- it could have forgotten where it forwarded the original mail on to, or it could instead decide to send a 'Hey! Look what somebody doesn't what you to read!' message in big flashing letters to the original recipient.
AOL and corporate mail systems can implement this because they control the destination mail servers, as well as the sending mail server. On the wider Internet, you'd need to replace SMTP with a protocol whereby the message is stored near to the sender, rather than near the recipient, until the destination user reads it. There are some good arguments in favor of a system like this (it could make spammers bear more of the cost of sending their spam, for instance), but uprooting a fundamental protocol and replacing it with something else isn't an easy task to do on a network as big as the Internet.
It's a bit of work, but relatively straightforward if anyone really cares about it enough to spend effort on it.
Add a new message to the SMTP protocol that says "I have mail for you, but I'll only give you the headers right now. When the user opens it, you can call me back and ask for the content." If the target server doesn't understand the message, fall back to allowing the email to be recalled by implementing a delay.
Publish an informal protocol spec before you publicly release any code; try to get it accepted as an RFC.
Create an open-source reference implementation for the most popular open-source email programs -- mail servers, mail clients, webmail platforms. Get it accepted in the upstream of those projects.
As people start using it, they realize it's really good and start to demand it of commercial implementations. As there's a published spec, the commercial implementations end up being mostly compatible with each other and the open-source work.
Sometimes you just want to pull back an email and Gmails 30 second lab function is useless.
With AOL I could check and if I can't unsend I know they opened the email. If this worked across all email and I wanted to use email for nefarious purposes I could use this to see, with great accuracy, exactly which email address that I've sent to were active and opened the message. I can then target these accounts more.
I feel like this could be a horrible idea.