Bitcoin vending machine owners have less chance of losing money through Bitcoin than if they had a cash vending machine.
People are constantly inventing new ways to trick vending machines by putting fake coins into them. Sometimes vending machines have registered low value foreign coins as high value coins of a different currency. There have even been some machines that accepted washers as real coins.
https://en.wikipedia.org/wiki/Slug_(coin)
A slug is a counterfeit coin that is used to make illegal purchases from a coin-operated device, such as a vending machine...
By resembling various features of a genuine coin, including the weight, size, and shape, a slug is designed to trick the machine into accepting it like a real coin.
Though slug usage is a violation of the law, prosecution for slug usage is rare due to the low value of the theft and the difficulty in identifying the offender.
There was a way to trick some machines by using a 10 baht coin (worth only 0.25) as a 2 euro coin.
https://en.wikipedia.org/wiki/Vending_machine#Coin_fraudThe 2 euro coin is similar in size to the 10 baht coin (worth only 0.25). Some vending machines used to accept this coin as 2 euro. They have since been upgraded and will not accept it anymore.
I doubt accepting unconfirmed Bitcoin transactions as payment would cost a machine operator much in double spends. It's too much work to attempt a double spend for a bar of chocolate.