Ripe did some testing in 2017 that showed that most places (~94%) are doing the right thing. Somewhere around 6% of the DNS servers were either making the TTL last too long, or too short.
There's a downloadable zip file there where you could probably figure out who the offenders were. Ripe did say that it was a mix of both ISPs and Cloud providers.
https://labs.ripe.net/author/giovane_moura/dns-ttl-violation...
Edit: There are also probably some corporate MITM type "content filtering" caches that are screwing things up too, by caching web pages longer than they should.