I run my own mail server. I really wish I didn't. It made total sense at the time (10 years ago) but now it really doesn't.
My setup is:
1. Edge facing custom written SMTP server, that handles various filtering rules, and passes the incoming mail through spamassassin, and then onto Exchange.
2. Ubuntu host running spamassassin in Daemon mode.
2. Exchange Server as the main mail server (was version 2003, but has gone through all the upgrades, and is now version 2013)
I spend so much wasted time battling spam, and fixing stuff when it breaks. Although I am lucky that my sending IP is not blacklisted, I still have to make sure that DKIM and SPF records are all correct for my various domains, and still the odd mail hoster rejects my emails.
I'm trying to migrate the mail system into Office 365, but the sheer effort to do that is a whole project in itself...