I'm not defending B&N, but you shouldn't rush to dispute the charges with your credit card company as Jered suggested. IANAL, but I've dealt with CC companies before. There are a couple things to consider:
* You cannot dispute the full amount. They provided you the product itself (albeit in a horrible way), and it would be fraudulent to claim otherwise. "They treated me bad" is not an reason to dispute the full amount.
* You cannot dispute $100 of the amount for the GC you never got. They never claimed to offer you $100 off the purchase price, and the CC company won't care if they offered you a $100 GC later and didn't provide it. They'll say, "The invoice specifies a $259 Nook plus shipping. Did you receive a $259 Nook in working condition?"
* You certainly can dispute the shipping portion of the full amount; they offered to take that portion off the invoice, so that portion is fraudulent.
If you dispute the shipping charge, one of three things is likely to happen: 1) The CC company simply credits you the shipping charge and doesn't contact B&N, 2) the CC company contacts B&N for verification and they admit they shouldn't have charged you shipping, or 3) the CC company contacts B&N for verification, they dispute the dispute, and you go into an even nastier customer service loop.
If you dispute the shipping charge, you'll probably end up getting it credited back (and who knows, B&N might even get you the $100 GC). However, there's also a chance that they refund the shipping price (or not) and then blackball you; close your account and never let you buy from them again. Paypal has been known to do this. I don't know if you care at this point, but that is something to keep in mind.
If I were in your shoes, I probably wouldn't dispute, giving the risks I just explained. Your blog post itself is probably more likely to effect change and get what was promised. I was considering a Nook vs a Kindle, ended up buying a Kindle a couple weeks ago instead and I do plan on blogging about it soon, so I will mention your post if/when I eventually do.
-Ryan (not sure why Typepad is just showing my last name)