Hi everyone.
I want to make a small contribution to this very interesting thread.
The biggest question of every buyer/future buyer is about this problem being a hardware or software one.
Well I have good news and no so good news.
Eagle Jones from RealityCap had done a great job measuring the accelerometer output, and he found that those values had some "offset". This is an small amount of variation over the real value, and can be positive or negative and also would be different for each axis (x, y and z). So, if in a giving position, your iPhone 5S accelerometer should "read" 1g over one axis, it could actually read 1.05g or 0.95g. This variations are different from sensor to sensor and they depends of several manufacturing process.
The good news are that the sensor used (that is indeed a Bosch part, but we don't know which one:
http://www.chipworks.com/components/com_wordpress/wp/wp-content/uploads/2013/09/bosch.jpg), had a non-volatile memory were the offset compensation values could be stored.
Why this part wasn't calibrated at the iPhone assembly line we will never know.
The no so good news: some Apple staff had been recommending the DnD and charge procedure, but let me be clear on this: THAT WOULD NEVER WORK.
Your iPhone had an internal 3 AXIS accelerometer. If you left your iPhone lying flat and supposedly "trigger" the calibration by DnD and charge, you are, in the best of cases, calibrating A SINGLE AXIS. A flat up iPhone would only been using the z axis. Remember that each axis have their own offset (negative or positive). In order to fully calibrate the iPhone you need to measure the difference between gravity and the accelerometer output in vertical, landscape and flat positions AND those should be as close as perfect as they could be, otherwise you would end with wrong compensation values.
You may asking why the above isn't a good news, since the sensor could be calibrated. Well, call me skeptic, but I hardly believe that Apple would admit any wrongdoing or that it would recommend hold the iPhone in 3 different positions while the sensor is calibrated. Neither we would see a recall.
Could this be fixed by a software update? This is a tricky question. If Apple "captures" devices assembled in every possible week or day they could, theoretically, measure the offset present in every accelerometer. iPhone's assembled near a single date should use accelerometer's manufactured in a small range of time, and, again theoretically, parts manufactured in a single batch should have similar characteristics. Based in those assumptions, is relatively easy to release a HARD CODED offset compensation, that would be applied in function of the building date of the iPhone. Of course this would be a single iOS 7 release, but internally they can customize what it does (in the same way that they apply the yellow wallpaper to the yellow iPhone 5C and no to another).
Problem with the HARD CODED offset compensation? It would be far from perfect, but supposedly better than the current deviation. At least it doesn't requires that the user put the iPhone in different orientations.
The second alternative to Apple, is do nothing and let the developers to build calibration routines inside their apps.
I want to suppose that the iPhone's being assembled now are properly calibrated.
Is important to keep this thread alive, and even more important, that the new owners publish their building date to confirm the above.
Disclaimer: all the stated above is my best guess on the issue. As I don't work for Apple, neither I had access to their software or hardware, I cannot assure or guarantee that my conclusions are valid.