No experience with SAA, but other airlines.
Usually when you don't show up for a flight the rest of your reservation is canceled. So by not flying DUR-JNB the JNB-IAD will be canceled.
If you have a paper ticket you likely will see a X at the JNB-IAD leg, wich means that this is a transit. So even if you are able to delete the DUR-JNB from the reservation and trow the DUR-JNB coupon away they still will see from the ticket that you are not allowed to start using the ticket from JNB.
So the best option likely is to get a JNB-DUR ticket to start your trip home from DUR - assuming the fare rules dont allow changing the return from DUR to an open jaw from JNB - which it seems from the responses you got.
Some people took airlines to court in germany for this and won, but in general you should be out of luck here.
Somebody here has more experience with SAA?