I was last down in Cape Town in November 2006; and will be there again on October 2nd. Cruz is certainly quite good; however, I would recommend Bronx Bar on Somerset Road (if indeed it is still there!) (about 2 doors down from Cruz). Gets very lively after about midnight.
The thing to remember is that you are not going to get a bar/club that you would be used to in Europe, USA, Australia etc BUT you do usually have a good night and the atmosphere is lively. Also try Mardi Gras for a more relaxed drink/meal.
As for Johannesburg ........................ AVOID IT! (but that is just my humble opinion).