The pitfalls of blindly voting the same way every time.
The reason they shouldn't be surprised is the reason stated in the intro to this post, the Conservatives can count on Calgarians to vote for them regardless of what the Conservatives do. The Harper government could remove all federal funding from Calgary and what would happen? Apart from the cancelling of several major projects nothing. The voters in Calgary will still stampede to the polls to vote Conservative. The Harper government could put a special tax on Calgary and that still likely wouldn't stop people from voting for his party. The Conservatives know this, so they know they can screw over Calgary as much as they like without any penalty.
By cancelling these projects, the money now becomes free to shore up Conservatives in marginal ridings in Ontario. After all Tony Clement went from taking his riding by a few hundred votes to taking it by several thousand by the simple injection of $50 million of taxpayer dollars from an unaccountable slush fund. By taking the money from Calgary, many marginal Tory ridings in Ontario will now benefit.
The lesson here, that Calgarians will never learn, is that by consistently and massively voting for the same party over and over again, that party doesn't need to listen to them, let alone do anything for them. So Calgary can expect more of the same, less money from Ottawa as that money needs to go elsewhere, where Tories are in danger of losing seats. The Tories are safe in the knowledge that Calgarians will stampede to the polls and vote Conservative again next election.