2eq,
Your only option of a direct, ie non-stop service is to fly from London. You have plenty of options from there. All other UK airports go via a hub in either europe or the middle east. I want to dive with Great White Sharks off Cape Town and looked in to it for my 30th a few years ago when Flyglobespan started a flight direct from Manchester. I was booked in business class but they pulled the service through lack of demand before I managed to go!
You might want to compare prices from the following airlines;
South African Airlines (non-stop or via Johannesburg)
British Airways (non-stop)
KLM (via AMS / Johannesburg with SAA)
Lufthansa (via Frankfurt)
Air France (via CDG / Johannesburg with SAA)
Virgin Atlantic (via Johannesburg with SAA)
Qatar Airlines (via Doha)
Etihad Airlines (via Abu Dhabi)
The quote for Emirates looks pretty competative though. Always check on the connection times to make sure you aren't hanging around for too long. Some connections are over 12 hours so I'd rather pay a little more for better connections.
Darren