Not sure if your idea is correct.
A lot of people myself included struggle with this:
[....]
Two ways to calculate your expected earnings per second
1. (best method) yourhashrate / 2^32 / difficulty * bitcoinreward
2. yourhashrate / networkhashrate * network blocks per second * bitcoinreward
You were forgetting how blocks per second changes when the network hashrate increases and difficulty stays the same. And don't forget the part variance plays.
The network hash rate affects your expected earnings? How? Details please ...