I just don't think there's much doubt that SoZ is better - if you happen to have Ivory. SoZ can be a game-breaker. KT is nice to have, but hardly a game-breaker.
Given the choice between KT and Sun-Tzu, I'll take Sun-Tzu. (Yes, obviously, I'd rather have both. Dare to dream.) Yes, your core cities should have barracks by the time you get Sun-Tzu. But at higher difficulties, it is really nice to have one-turn healing in every city. Also, those highly corrupt cities can now help you crank out military units instead of cannon. If you hit cavalry and then put the breaks on research, you can cash rush a veteran cav or two close to the front every single turn. Conquest goes really fast at that point. This strategy works great at Emperor. Not sure about higher than that.
Of course, it is usually better to capture Sun-Tzu's, if you can, but that's a different issue.