For what it's worth, we just spent two weeks trying and failing to get Stripe's Bitcoin integration working on our site. The short version is that Stripe guaranteed a USD BTC exchange rate for an hour, after which they would automatically cancel the transaction. Given that most transactions now take well over an hour to be verified on the blockchain, that means basically every transaction fails.
If they "cancel" the transaction but it later ends up getting mined, who pays the fee for the return transaction? Regardless of the answer, variable and large fees really do make this sort of transaction a minefield.
Happened to me a few weeks ago - I tried to buy something and it got confirmed, but not fast enough for Bitpay, and they cancelled the transaction. So I was out the fees both ways. It was unpleasant, but not surprising, given how shoddy the whole system is.
Everything is fees with Bitcoin - fees for transactions, fees for exchanges, fees for mining pools, dev fees for mining applications, etc. There are no end of middlemen, and they all have their hand out. Sure, each of them is providing some legitimate service, but it sure makes 3% merchant fees for Visa look positively cheap in comparison. And did I mention the instant transaction times, the fraud protection, and the complimentary hardware token that's accepted by millions of businesses worldwide!? Try a credit card today!