You need a third party in between.
That’s what is crazy and took me a long time to debug. If I send from my gmail to myself it works fine.
But if I send to an external mail account that redirects back to me it’s gone.
You can test this with any mail server you run. You can theoretically run a mail server locally and test it if you have DNS resolution that gmail can see.
I use cpanel on one of those countless Linux shared hosts and they have a decent mail admin, I expect any other host will have the same or similar.