Overdrafting is literally in your deposit agreement. If you’ve ever looked at a restaurant or hotel’s books, they often make copious use of overdraft financing. Your relationship with your bank is a commercial one; your relationship with your community is civic.
If your credit card will charge $100 interest if you don’t pay the balance at the end of the month, your next pay check clears in a week, and your bank charges $30 for an overdraft, it could make financial sense to overdraw.
That's true, but attaching a dollar value to it makes it transactional, which makes people feel more okay with breaking the law. It's similar to a story I heard on freakonomics: a daycare was tired of parents picking up their kids late, so they instituted a fine (trivial amount like $10) in hopes of disincentivizing parents from doing so. Late pickups actually went up after the fine was instituted.