I just checked the fares out of CPT versus those out of LON, and it is difficult to make a full comparison as the fare structures, bases, and rules differ, but roughly the NUC (=USD) values converted from ZAR and GBP are roughly 25% lower out of CPT across the range.
BA's are more or less in line with the above. So why are BA finding the route profitable and VS not?