I needed to cancel a non-refundable rate three times (out of about 250 stays), I all cases it was clearly my fault. I usually only book non-refundable rates if they're 25% and at least USD 20/d cheaper.
So far I was lucky (and still happy with Hilton ^ ). I always contacted the hotel directly:
A HI in Cleveland, OH (three day stay, wrong week) gave me a voucher for three nights.
The Hilton in Pittsburgh (assignment got cancelled) fully refunded a five day stay.
A HI in Sandusky, OH (missed connecting flight to CLE in LGA) refused to refund anything, but I was able to settle this incident on my next stay there. Got full credit for the first stay.