The one service I really hate running is email - I found it very hard to configure and run reliably. There's so many interrelated systems and potential things that can go wrong and the outcome is lost email which isn't acceptable.
I'm happy to run a local server for literally any other service.
In the end I decided that it's well worth it to pay someone else to do email.
I use Amazon Workmail which works really well and it easy to set up.