Per TIMATIC, databasen som används av flygbolagen:
Visa required, except for Passengers transiting through Cape Town (CPT), Durban (DUR), Johannesburg (JNB) or Lanseria (HLA) with a confirmed onward ticket for a flight to a third country.
Så om Doha-Johannesburg-Gaborone är i en enda bokning, behöver du inte en visum.