Well I think the best thing would be to just convert your final balance at checkout.
When I'm shopping these days in the US (I'm from Canada), retailers give me the option if I want to be charged in US Dollars, or Canadian Dollars. Retailers should be able to add other options to say Pay in BTC, and they will have the latest conversion price there. The consumer should be smart enough that if they have $100 worth of goods that it'll be approx. 0.1BTC or something like that.
Or simply there should be a app that can scan all products (Normal barcode or USD QR codes) and add them in your shipping list, calculate final amount and convert that into bitcoins for payment and pay that retailer.
With most retailers these days having their own apps...should definitely be feasible!