It's been several weeks I'm working on this damage calculator : www.diablo3theory.com How does that work ? Just input your stats (there are tooltips to help) and you will get your damage as the one on the inventory sheet. I have tested about five other calculators, and I can affirm mine is the most accurate, every formulas used are detailed at the bottom. For the moment, only Dual Wield calculations are significantly off, check the FAQ at the bottom.
You can create up to 4 profiles, everything is saved in cookies. There is also stat equivalencies : input the desired damage increase and it will display how much of X attribute is necessary to reach it (replace X by the primary attribute, attack speed, crit ...).