In general, yes, instance blocking can help encourage better moderation. But it's complex: instance blocking cuts communication between everybody on both instances, so especially for larger instances a lot of people who aren't behaving badly pay the price. mastodon.social is an extreme example of this -- not particularly well moderated (which isn't the moderators' fault, it's Eugen who's made the decision not to put enough resources into moderation and still keep it as open sigup, but still) so the source of a fair number of problems, but still a big loss to connectivity if you defederate.
(Also I think it's critical not to view instance blocking as punishment, it's really about safety and asserting boundaries. But that's a digression.)