The vast majority of options include a layover in Europe.
There is a very limited number of non-stop flights from NA to JNB (ATL/JFK/IAD-JNB).
Some FFPs (such as Aeroplan) will allow a routing via South America instead of Europe, e.g. US-GRU/EZE-JNB).
Routing via the Middle East (e.g. EK via DXB, QR via DOH, EY via AUH is another option.
Last but not least, routing via Asia can work well. The best program to do this using AS on CX US-HKG-JNB.