1) The Starbuck's Point of Sale terminal would have a bitcoin payment icon which when clicked starts the process.
2) The dollar value of the order is immediately passed to Coinbase (or similar) which take the dollar value of the order, converts to Bitcoin at the current rate and adds a small transaction cost (to cover Coinbase costs).
3) The Starbuck POS terminals then displays a QR code with the Coinbase generated address and the Bitcoin transaction value provided by Coinbase.
4) The customer then scans the QR code with their own phone and taps to pay the Bitcoin value to Coinbase.
5) The original order value is then immediately credited by Coinbase to Starbucks in the local currency. The sale is complete.
All Starbucks has to do is to use an interface provided by Coinbase. The Starbucks internal systems only see the original local dollar value.
Coinbase (or similar) does the Bitcoin part of the transaction and bears any risk. Obviously no-one is going to wait around in a coffee shop for the normal Bitcoin confirmation.
The customer sees a pure Bitcoin transaction which happens immediately. The customer has no idea a third party is involved.
This is the system that Coinkite employs; a POS handheld system that settles immediately on their internal system afaik.
Don't Coinbase and BitPay merchant services already do this? IIRC, they are already doing off-exchange transactions (that post immediately) if the client wallet and merchant service are the same.