To achieve a whole block solo in a month you're going to need about 1500 TH/s
https://www.coinwarz.com/calculators/bitcoin-mining-calculator/?h=1500000.00&p=2600.00&pc=0.10&pf=0.00&d=922724699725.96300000&r=12.50000000&er=4486.23010000&hc=0.00
Just to double check that: https://blockchain.info/charts/hash-rate
Total hashrate: 7Million TH/s divided by 6*24*365/12 = 4380 blocks a month = 1598 TH/s
So you need about 115x AntMiner S9s which cost about US$ 1,288 each, so US$ 148,120.
But then the last block generated US$ 60,900 of bitcoin (14.4BTC).
Would it matter if the farm is in Southern Africa away from anyone, would another miner that is closer always get the block first?
Closer to what? There is no centre. And as blocks take an average of 10 minutes to produce, and they are small (1MB), so while there are race conditions they are the same for everyone everywhere.