As a registrar I can confirm that we can back out and get our money refunded for any transaction within 5 days. Now you can't abuse that (and there is a ratio of reversals you can do w/o having a problem) but the risk they are taking by waiting is actually far less than a credit card risk where you lose big time if fraud is involved (it gets kicked out much later than the cutoff to get the money back for the registry fee). And with cc you get dinged with a penalty and lose the money.
It's essentially no greater risk than accepting credit cards; any buyer can do a chargeback and get their money back at a moment's notice, but it happens fairly infrequently and when it does happen, you just revoke their rights to the service and ban them if necessary.
Which makes it fairly reasonable for a seller of $5-15 products that can be cancelled to take on that risk, since it's a lot less problematic and time-delayed than credit card chargebacks. "You'll gain high confidence within 10-40 minutes" seems preferable to "you might get a chargeback months later".
(Clarifying edit: I don't know if that's accurate for zero-confirmation double-spends; it's accurate for non-zero-confirmation double-spends.)
Now it's basically a 50-50 chance of which transaction will make it into the ledger and which will be rejected as invalid because the input was already spent. If you have your own compute power, you can shift this, up to the extreme of having >50% of the total power, in which case you can guarantee B is accepted, since you can outmine any chain that includes A. However, there is no reason you would need to forfeit any reward if you personally mine the block with the transaction in it.
Confirmations shift the probabilities back towards the merchant, since no honest node will mine on a chain not already including A because the one including A is longer. In this case you must mine secretly on the chain including B until it exceeds the length of the chain including A. This absolutely requires more than 50% of the network compute power, since you must totally outmine the honest network. But again, if you can get the length of chain B up to the point where it exceeds chain A, the block rewards in chain B are yours and those in chain A are forfeit.
All bitcoin transactions get written to a globally-shared ledger of transactions that is maintained by the bitcoin network. Roughly every ten minutes, a new page is added to the ledger that includes (most of) the latest transactions. When your bitcoin transaction is added to this ledger, it is called a "confirmation".
Accepting bitcoins with "zero confirmations" means that namecheap doesn't wait ~10 minutes before accepting your payment. Instead, they accept your transaction as soon as it is widely broadcast over the network, which takes only about a second after you send your money.
The danger, of course, is that the payment never makes it into this ledger, which basically means the transaction is invalidated, and the money "was never sent". This only happens in unusual circumstances (can't get into them all in this short explanation) and is only a small risk.