Easier For the retailer, the answer is very much dependant upon the type of purchase.
If I am buying small discretionary purchses then it is mostly not necessary for the retailer to wait for confirmation. Think of a coffee, $4.40 so as soon as the payment notification arrives I can have my coffee. It is not concevable to steal for benefit with such discretionary purchases because I have to fine a new coffee stand every day if I keep robbing with low transaction fee and double spend method. They would sink my coffee. This is suitable for small items and passing trade, the recovery is petty.
For slightly more expensive goods, say I purchase $100 of product at the hardware store, the benefit obtained by the trivial theft is more substantial -- theft is never worthwhile -- and so it should be sufficient to wait for one usually, or at most two conformations after the payment notification. Usually this requres a wait up to twenty to thirty minutes long but depends on the transaction fees and network. The wait is not inconvenient, this is easily suitable for online and for retail purchases, it can be call back to pickup or drop over to my home or office service.
If I require maximum surety say for house mortgage and banks then I require a minimum six confirmations and the record of the transaction is considered permanent.
The method you describe does work, many wallets have a built-in display of the current status for any transaction affecting the wallet to make identifying validated payments much easier.
Kar:
Suppose customers pay me bitcoins for their purchases. As far as I understand, I could check block chain that the proper payment amount has been made to the address I generate for each customer, and after waiting for several confirmations I should then ship the product. Why several confirmations? Wouldn't one be sufficient?
Also, is the method I described above the best way to identify a paying customer?