We need a payment protocol with non-
refudiation built in.
See
https://gist.github.com/2217885 for a multisig version (the singlesig version is simpler, but the merchant <-> customer communication will be the same).
FTFY

When Stephen posted this earlier I started banging my head trying to figure out a solution to the scenario he depicted. I failed, I visited this scenario a year ago and still didn't have an answer. I think he is teasing me to use my brain better as he likely understands Bitcoin scripting better than I or many of us. Give us the answer Stephen!!

Regardless, when he mentioned this again today and even when I thought about it a year ago...MultiSig or a derivative seemed like the only answer...it still does.
I am confident that there is a way to execute escrow solely between two parties for everyday common transactions.
Will keep banging my head on the desk to figure out how.