The IMAP transport does indeed mark messages as "SEEN" (when configured to do so), however it then ignores this flag and upon each subsequent poll and pulls down all messages (whether they have already been retrieved or not).
It should only retrieve "NEW" messages, at least as the default behavior.
The only alternative is to enable "backup", and enable delete, which will cause it to save the messages locally on the mule server. This is not a preferred solution, at least in our case, for several reasons. Most notably:
1) You can easily go into the exchange mailbox and mark a message as "unread" to get Mule to re-process it if for some reason the first processing attempt failed. [ or you can forward it to another destination for manual processing ]
2) If you are running multiple mule instances all polling the same mailbox, you don't have to figure out which mule server might have the copy of the message (nor would you have to configure a shared storage solution for old messages).
3) Lastly, new email management policies being drafted by the lawyer types require email archiving to take place only on the central exchange server. At this time there is no room for exemptions like mule folders.