What is surprising is that South Africa produces so few medals.  With its climate and large sections of its population having social life centred around sports clubs (in the old days mainly white and Indian, now much more mixed) it should clean up.
If less money went to SASCOC and more to the clubs I am sure things would improve.
Mind you, in places like Durban, the ANC has actively worked against the sports clubs, so I do not see that happening.