To be fair, you *are* crazy if you want to write your own MTA, but only because there are so many weird requirements and buggy implementations that you'll have to be compatible with.
That's half the problem. The other half of the problem is that if anyone else uses your MTA, you've likely multiplied the weird requirements and buggy implementations existing in the world.