Somebody from Smogon forums answered the first part of why Ditto in PU:
I mean the simple answer is because no one uses it.
It's viable in every tier to revenge kill set up sweepers, but equally if tiers are actually well balanced there should be other Pokemon that can do that and not risk being dead weight elsewhere.
Source
It's a great reverse sweeper and can almost always get you out of a sticky getting sweeped by opponent situation. It gives a lot of pressure on opponent to not set up.
While indeed it is a great reverse sweeper, there are other Pokemon can handle set-up sweepers along with the ability to handle something else, and not being useless on non-set up teams or bulky offense, stall, balance, etc.
You can compare Zacian-Crowned's counters Quagsire and Necrozma-Dusk-Mane in same way. While the former is better able to handle due to it not being beaten by Swords Dance or Assurance, compare Quagsire's role in different case. Let's say opponent doesn't have Zacian-Crowned. Then, Quagsire is practically useless in your team. On the other hand, Necrozma-Dusk-Mane can do good against Xerneas, and able to set-up Stealth rocks which means its viability outside of countering Zacian-Crowned is solid, unlike Quagsire. Similarly, there are other options that can handle set-up sweepers but not being useless in other cases as compared to Ditto. The user that answered it told similarly, "there should be other Pokemon that can do that and not risk being dead weight elsewhere."
So why should it be ZU and not some higher tier?
It is ZU as already told above, it doesn't get enough usage. As Demon Hunter already explained, Ditto's role is being limited as a revenge killer, and not being able to do anything good outside of it, as Ditto's reliability on Choice Scarf locks it into one move, and not copying opponent's HP stat and its own HP being very low isn't good.
Hope this helps!