I have to disagree: it was NOT the publisher's fault.
The publisher sent over a reasonable number of cd keys (indeed, in the sale, they sold four times the number of copies they have SINCE RELEASE). The game sold extraordinarily well on steam, presumably because of the publicity that Steam brought, as well as the price drop. Underestimating demand makes sense, in such a dramatic case.
The problem occurred because the publishers, based in Germany, went home at the same time that Valve were just getting started on Friday. Valve realised they were running out of keys, sent off an email to the publisher to get more keys, and received none (everyone in Germany having gone home). Going into the weekend, they KNEW there were no more keys, they KNEW that the game wouldn't be available (as they weren't going to bother doing anything about it), and they DID NOTHING about it. No warning, nothing. They knowingly let customers buy a product they didn't have, without any warning.
They did not (have not? I haven't seen anything official) addressed the problem in the forums, nor have they apologised. They activated the game first thing Monday (well, US West Coast Monday, so, like, practically Tuesday most places), but said nothing on the matter. The only person representing Valve that I saw was a volunteer moderator whose attitude was: Stop whining, Steam is fine. You accepted ToS, deal with it.
In contrast, one of the developer's employees logged onto the Steam forum on a Saturday evening/Sunday morning, gave us some explanation of what was happening, apologised, gave us a time-frame, and was generally very polite. They too did what they could at opening hours Monday morning, and kudos to them for that.
The problem is not that Valve or the publisher ran out of keys, its that it ran out of keys, and continued to sell without a warning, WHILST KNOWING that anyone who bought the game couldn't play it until Monday at the earliest.
TL;DR:
Valve ran out of keys prior to their close of business, after close of business of publisher on Friday. Obviously couldn't get keys before weekend, but didn't put up any warning either.
The publisher did make contact over the weekend, Valve did not (and on Valve's forums, no less). Valve knowingly sold a product without any keys, which the developer/publisher almost certainly knew nothing about.