It doesn't seem like it's best to resort to keeping kids afraid. They have to feel bad.. They need a conscience. They need a reputation that's tarnished.
If I had a school, I wouldn't have any punishments; only warnings and bans.
It's not your right to detain anyone, nor to scare anyone. When students cause undue trouble for others, just tell them why that is not acceptable and inform them they need to change their behaviour or leave. Not as a scare measure, but so they know their situation so they can make a decision. If they don't want to attend this school, or if causing trouble is more important for them than that, they're best out. The main problem with behaviour in public education is that you can't ban the bullies and assholes except maybe in extreme cases.
But that won't cause anyone to change their behaviour. Troublemakers will only see "warnings" as a sign that there are no consequences, and won't believe they'll get kicked out until it does happen. There has to be a middle ground between no punishment (warning) and getting kicked out.
You can't just explain abstract consequences to a kid and expect them to react the same way as a rational adult. Some might, most won't.
They'll believe it if they know it has happened to others before. I've found children are experts at figuring out how hard they can push it. They can show quite mature behaviour if you treat them with the respect and expectation of responsibility of adults. The converse is true for grownups that are treated as children.
If you want a middle ground, you might readmit non reincident students, if they insist, after they give some service to the community (not necessarily the school). But you don't present that as a punishment, but as a token of regret and will to change. For that reason, you have to be pretty convinced that it's the child who wants back into the school. You shouldn't listen to parents for this purpose.