I don't understand why email hosting has to be so difficult. You say it is easy, which it is if you know what you are doing, but it is not really that simple, is it? There is no out of the box solution that just works, even the microsoft effort called exchange is not that. You should be able to configure a mail server with the ease that you can configure a mail client.
In 16 years of running my own mail server(s) I have never done anything to "get my mail accepted", other than make sure relaying is turned off, which I think it is by default in just about every implementation since 1998.