I've just called Delta and they said that as long as the flight is ticketed with SR code, I'll get the miles. They double-checked with the Sky Miles service center and they said that this info was correct and that SR code-shares on Cathay and South African would get credit. I've been given misleading info from DL in the past. But, I think I'm going to take the risk and take the Cathay code-share! Thanks for your help.