Check your MX/SPF/TXT Records
I have my DNS configured through Cloudflare. I have followed their guide on setting this up as well as the one from Apple. Cloudflare does not allow a trailing period at the end of an MX record, and whenever the @ symbol is placed somewhere it defaults to the root domain. One of the records (The CNAME) allows DNS Proxy which I have disabled. Every time I tell iCloud to verify the settings it tells me to check one of my records, usually the MX record but sometimes other ones.
When I check MXtoolbox or query my ISP's nameservers I get the correct information in all of the records. An error message or a reason for failure would be very useful in this situation as a generic "check the records" response is somewhat meaningless. Is there something I am unaware of that needs to be configured separately? I have also re-started the process and tried in a different browser, all with the same behaviour.