This question already has an answer here:
Heroku in their docs talk about why you should avoid naked domains if you are dependent on IaaS or PaaS.
There is also an existing question on ServerFault, but it doesn't tackle my query.
I have understood their explanation. The part I am confused about is the caching of the ip. Heroku claims they can change the ip of their endpoint in their DNS settings and all will be good. However, don't most browsers/proxies/clients cache that ip? TTL values are not always respected. Also how quickly does that ip get propagated? Wouldn't the requests still go to the old ip?