A bit late on the reply here, but when people talk of diving Africa, they often talk about the places you mention. Nothing wrong with those (although having worked in zanibar I can agree the diving is good on a macro level, but otherwise fished out), but there is a lot on offer in SOUTH Africa too
Starting at the tip, we have Cape Town which in itself is a great destination to visit. Here you can do some cold water diving with the ellusive 7 gill cow (as I like to say DINASAUR) shark. Then you have Plettenberg Bay which also has great diving from what I hear ( I haven'tt dived there though). Then we get Protea Banks which is the deeper, current filled wonderland of pelagics. Sharks galore.
Just a wee bit away from that is Aliwal Shoal which if you google will give you a good idea of what it offers, but it is a mix between the usual marine critters and pelagics + sharks etc. A wee bitt further is Durban if you want to do some deep wreck diving.
Then up the coast we get to our warm ground which is Sodwana Bay. This is still the top place in my books. 100's upon 100's of species and diverse marine life as well as pelagics on the bigger/deeper dives, but you never know. I have rolled off the boar at stringer which is at the tip (below) of 2mile reef and seen a Manta. We have also done quarter mile which is literally just off the beach and spent 50mins watching 4 massive and some gestating raggie sharks. Sodwana really has everything as well as technical deeper diving which if you are lucky is where you can spot the coelacanth.
Just up from Sodwana is Rocktail Bay. Believed to be like Sodwana on steroids, although I haven't personally dived there yet.
And then just across the border, literally, you get Ponta which is just as good as Sodwana and sometimes even better. Tropical, tons of species, and everything from nudi's the size of a quarter of a rice grain up to hammerheads, tiger sharks, potato bass etc etc.
This is just a brief run down, but there is tons of stuff to see and place to go based on what you want out of it.
Chat to me if you are ever interested as I work with a dive centre here and we run regular trips so I can point you in the right direction
Same goes for the "safari" side.