Ah, but even checking the MX is fraught with danger. What if the name servers are offline for the moment, or the local nameservers are not working, or even that no local nameserver is configured due to security rules? Wait 30 seconds to go to the secondary? Return it as invalid? It's probably much better to send some sort of cookie to the e-mail address to continue, if having an e-mail address really is important.
As an aside, + is valid in the username portion of the e-mail address, and I try to use it regularly, I really do. However, the only form I've found so far that actually accepts it (without causing problems) is the mailman interface.