Because it's the way the DNS system was built in first place. It is not an anomally or an error, it is just the way it works. Let's see this with a day to day example:
Your office is located in Miami, US and you just changed the NameServers of your domain that is hosted in a server located in Amsterdam, Netherlands.
When you try to browser your domain in Google Chrome or Mozilla Firefox, the request is not going to be direct to your server, first it has to go trough a few ISP points / nodes. That's is when your notebook / pc starts checking on your local DNS Cache and the request is sent to your Miami ISP.
After that, it is redirected to Chicago, US, and then your request has to cross the Atlantic ocean all over to Europe, to connect to other intermediate ISPs in Spain, until it finally reaches your server located in Netherlands, as you see in the next image:
Each of the mentioned ISPs in the different geographic places check their own DNS Cache to see if they already have information about your domain, if it's not, then they look for it and saves it for next time to avoid requests the next time, this accelerates DNS resolution and traffic over the dns servers.
ISPs also handle the time to live (cache refresh time) differently, that's also another reason on why some of them will discover your new IP soon than others.
Now you know why your dns propagation time takes up to 72 hours.