Bitcoin Mining Computational Power
You are assuming that each mining pool is hashing the same block.  This is not the case.  Each pool has its own block, with its own set of transactions, put into its own order. Mining isn't about finding the only block that is able to be the next block, just a block that follows the protocol rules.

Furthermore, mining pools are constantly updating the block headers that their nodes are hashing, to include more transactions that they just heard about.  Because all pools, and even all nodes, are trying to find a nonce for different block headers, it's not always the most powerful pool that wins.  It becomes random.