I host my own, primarily because of the control / flexibility it provides. If you're hosting only a few domains, Cloudflare or the domain registrar is fine. But if you have hundreds, and need to find all A records pointing to 192.168.1.2 and change them to 172.21.3.3, then a web interface is a pain
A self-hosted solution with a db backend makes mass changes much easier. And you can easily backup/restore all your zones.
Anycast DNS is nice but I'm not completely sold on its value. Yes, it might shave a bit off the initial lookup, particularly for users far from your self-hosted DNS, but not much. My DNS is hosted in eastern NA. Testing from a Japan VM, initial lookups for Cloudflare-hosted domains are about 80-100 ms faster. That's about one-quarter of a blink of an eye
(
ref). Saving that time on an initial lookup doesn't have a lot of value for me, when Japanese users still have to drag every bit from a webserver that's also in eastern NA. Now if web services were geolocated it would be a different story....