Don't limit yourself to connecting via LHR. ET (Ethiopian) isn't an airline most people think of but they have flights IAD-ADD and you can connect from there to JNB for $3,000 r/t. The flight times aren't terribly convenient (an overnight on the outbound in ADD).