Insufficient connection possibilities at the CPT end is my guess. JNB is the major hub for all of southern Africa and beyond.
That said, CPT is a major tourist destination and there must be a significant amount of VFR traffic.
BA are up against the same problem and it doesn't seem to prevent them from making a success of the route. Both airlines leave the aircraft on the tarmac at CPT (and JNB) between morning arrival and evening departure.
CPT is an increasingly important business destination as well as tourist/VFR.