There's an easy solution for handling confirmation times.
You make them pay after they order.
By the time their food is ready, there'll already be 1 confirmation and 2 or 3 when they leave.
If something happen you can just ask them to pay again, and their wallet will also show that the transaction failed if things do happen.