They have the right. It's just crappy business practice.
I'm worried now that I saw this thread, I ordered 5 pmag 30rnd w/window on the 18th. They said it would be on backorder till jan 1, I'm fine with that, they were 15.99 each (reasonable). I'm now just waiting for the cancelation notice like the OP got.
It's one thing if CTD realized they weren't getting any of the OPs ammo for months and did not want to keep a hold on his credit card. But obviously they have the ammo since they're offering it at a premium.