Going through LHR is only about 3-4 hours more flight time then going ATL-JNB direct. Yes need to add whatever connection time, but it breaks up a really long flight and I enjoy visiting even if only for a day.
Coming back through LHR is even less time difference in flight. Also offers connections to US that will result in some cases no difference in total travel time.