I agree, but there's some nuance to it.
I self-host 100% of my dev environment and tools. I don't care too much about getting services from Docker Hub, regardless of whether it's free or paid. However, I do care about my namespaces and I don't want someone acting as if they're me, even if it's innocent and unintentional.
Because of that I feel like I'm forced to deal with services like Docker Hub. It's a net negative for me to begin with, because I have to take the time to register an account, but it gets really awful if everyone starts asking for money to simply own a namespace.
On the Docker Hub side, there can't be much cost in letting me hold my namespace and, because I've got my preferred namespace there, it makes it low friction to check them out as the first option if I ever need reliable image hosting that scales. There's some reciprocal benefit IMO.
In principal I should probably be paying them something because all of my self-hosted stuff runs on Docker.