The main issue I have with B2 is that I'll be using some client where the API transaction costs are a complete unknown, at least to me. I have no idea how many API calls of the various sorts the different clients will use, and how they scale with my data.
I have a almost two million files, if a client uses one or two B or C API calls per file when processing the backup set, then that's 5-10 bucks right there.
Another thing you can do to protect yourself if that's a big worry is by placing a Cap or an Alert for a transaction type. That way with an alert we'll notify you when you're nearing that cap so you'll have forewarning instead of just being charged (or if you set the cap, we'll stop until it's been lifted or reset).