It helps to understand how this part of the hiring process typically works. In some companies, including IBM at that time, your interviews start a time-out running in the HR office. If they haven't heard any of the managers say they want to hire you within some number of days, they automatically send the "sorry" note rather than rudely leave you hanging.
However, this means that when someone does want to hire you, there's a risk that they don't inform HR of this soon enough to stop that letter, with the result that both letters may be sent.
So if you get a rejection letter after bring told to expect an offer, and it doesn't apologise for withdrawing that offer, it may be worth making a phone call to check that the rejection is real. It may just be a communications problem inside the company.
Hope this might help someone, eventually...
(If my offer letter had been further delayed relative to the default rejection letter, my first job might have been with CDC instead. As it is, I framed both letters side by side as a cautionary tale.)