Basically I think, a three-strike-model is fine for a temporal muting. A combination of warning/muting with increasing times should be fair enough if communicated clearly.
Enforcing a permanent ban on a user I would consider as ultima-ratio because you tell the person "you are not welcome here (anymore)". I'm not a fan of permanent banning, before doing so I would remove the account permanently (and maybe blocking a re-registration)
If a person violates some "hard" rules like ("no hacking") a temporary ban might be a good warning to show them that this is not the way you like it. If the person continues in this case, I would suggest to delete the account, because it violates the game balance and thus there is no reason to keep the user.
So, how do you show if there is a "working" moderation: please don't use a blamelist / list of banned/muted/whatever accounts. Putting someone in the pillory might show others that you have caught a user in this case but maybe the other abusers are better ;). If someone reports an incident and you resolve it, say that you have resolved it.
Finding the right amount of warnings/bans/rule violations to take actions depends on the community. if you have a community which demands a very fair game, you have to be stricter than on a "normal" game where there is always a bit of "abusing".
You have to take a good approximation and a good monitoring of the "climate" within the community - it's better to follow a good intuition than to follow too strict guidelines.
After/before each action you should ask yourself the questions "if I'm the viction of this measure, would it be fair for me?" and "is this a fair reaction for the community?". Fair doesn't imply popular. If you have to take action against a popular user, it's not nice to have to do, but you have to. You should take the same measure if the user isn't popular.
Speaking for myself: if the user is a regular I would not take the same actions against the account if it's trolling as I would take against a known troll.