For our trip to to Peru, we booked all excursions (Macchu Picchu hike, jungle tour) from home months in advance. When in Peru, we found out that it is much cheaper to book them there. Is the same true for South Africa?
As someone who has lived there and revisited it as a tourist - yes, yes it can be. Sometimes.
The whole point of an international broker is to make it easier for you though - and you don't have to deal with problems on the ground, as you may have found in Peru, language barrier can be a pain sometimes - not as much of a problem in South Africa where most speak fluent or some English, but still. Of course, having a middle man will always mean a mark-up. How else do they make money!
We booked several game drives in Kruger Park through a company, and ended up being wrongly charged for one night. And on the ground it was easier to decide what was worth doing when we could see the trucks and the situation and realise what was good and what wasn't.
However, you do run the risk of things being booked up. Not as likely as last year during the World Cup, but still.