This worked for me:
Disable all of your mail accounts and restart Mail.
1. Choose "Preferences..." from the "Mail" menu
2. Choose the "Accounts" pane
3. For each account:
3.a. Choose the "Advanced" tab
3.b. Un-check the "Enable this account" checkbox
3.c. When you switch to a different account or try to close the preferences window, click "Save" when prompted to save changes
4. Restart Mail
After restarting Mail with no accounts enabled, it shouldn't use any CPU at all -- there are no messages to display!
Re-enable accounts, one by one, until the CPU usage is back at the previous levels (> 100%). Note that Mail will always consume a good bit of CPU immediately after you launch it while it syncs with the mail servers.
Once you've found the account that causes the CPU usage, go to each of your mailboxes and folders for that account and choose "Rebuild" from the "Mailbox" menu. Alternatively, you can just delete the account from Mail completely and re-add it. If you have multiple accounts, note that there may be more than one account that needs this treatment. As an extreme measure, you can delete ALL of your accounts from Mail and re-add them (or rebuild the mailboxes for ALL of your accounts). In my case, the first mailbox I rebuilt (the Archive mailbox in my MobileMe account) did the trick.
This will cause Mail to re-download everything in the account. I think the CPU usage might be caused by something that was messed up with the account was initially downloaded and/or indexed. Resetting that (by rebuilding the mailboxes) fixed the problem. Mail is back down to 1% CPU when idle, even with approximately 5 GB of mail on a collection of IMAP accounts.
Good luck!