I've had pretty good luck, where Amazon shows a "safe estimate" for the delivery date, but it arrives in a few days instead. (I'm in Texas, maybe you're referring to Canada specifically)
Not just Prime, all packages. Even an hour from Mississauga, where Amazon has a warehouse, packages are super delayed. I'm not sure if it's Canada Post or Amazon, probably both.
Many of my packages (not just Amazon) have been coming out of Vancouver despite being in the GTA, so my assumption is that the items themselves are fresh off the boat (or plane) from factories in Asia, and the demand has outstripped their ability to get inventory on trucks and into the Mississauga warehouse to begin with.