It is a great idea to keep your own personal metrics about various mining aspects.
When I started out, I calculated the speed/USD cost of each potential video card and calculated how long it would take to pay off from there.
You are right however that the valuation of a BTC depends on many other factors. The most impossible one to guage being "speculation".
I have seen USD/BTC prices jump as much as 30% in a single day.
So whatever you calculate today, might be off 30% by tomorrow
Don't you just love bitcoins!?