This is a fundamental misunderstanding people have about Bitcoin.
A bitcoin before a block confirmation ~ A credit card before 180 days.
There is a small possibility of "undoing" a transaction before a block confirmation, just like there is a small possibility of a customer doing a credit card chargeback before the credit card payment clears. However, it's a pain in the ass (even moreso with Bitcoin), isn't reliable with Bitcoin, and almost no one ever does it.
For small transactions like buying soda from a vending machine, waiting 2 seconds for the transaction to propagate is more than enough.
The only time I would ever wait for a block confirmation is if I was doing a transaction in the thousands of dollars range.