Setting up email and actually getting into people’s mailbox isn’t trivial.
If you self host? Absolutely. That’s a nightmare. Paying a provider (like proton, for instance) to manage your custom domain email is easy. I haven’t run into any issues having my email accepted, even by hotmail addresses.
You might run into issues with some newer TLDs, but that is slowly being fixed. Also .xyz domains get sent to spam a lot because they’re usually used for malware.