I think someone should check my work but 2^32 * difficulty = hashes to find a block on average

Close enough for government work. The actual formula for calculating expected time to solve a block is:

2^256 / (((2^224 - 2^208) / difficulty) * hashrate) = expected time in seconds to find a block

@shadyyaser you're forgetting about the target difficulty in your stats. Use my formula, plug in the network difficulty and a hash rate, and you'll see that it's considerably different than what you're thinking.