A custom Exchange Transport Agent would do what you want (but you'd have to pay somebody to code it). I'll include some links at the bottom.
You're probably best off doing something like both Maxwell and Sam Cogan suggest and just poll a mailbox and fire off events based on the mailbox contents. Microsoft claims that Exchange 2007 IMAP supports the IDLE command (see http://technet.microsoft.com/en-us/library/cc540463.aspx and http://www.ietf.org/rfc/rfc2177.txt for background on IDLE) such that, in theory, Exchange can do "push" notifications of new emails to an IMAP client (thus eliminating polling in the IMAP client).
I think I'd go the route of the IMAP client (w/ or w/o IDLE) such that you can easily move the client process off to another server computer if scaling becomes a concern, and so that you're not "tied" to Exchange, should you decide to make a jump to a different mail server platform in the future, or should Microsoft decide (like they've done so many times before) to deprecate the API that transport agents use.
If you want to get brave and go for coding a transport agent, have a look at: