In fact, I just recently over-drafted my rent. Do you know why? Because my phone company auto-charges to my account. All I had to do was forget what day this happened, and not coordinate the exact day that my landlord cashed the check. (PS: it was my landlord who charged the overdraft fee. I have a decent bank.)
You're taking too narrow of a view here -- this isn't about responsibilities. Of course I'm responsible for my over-drafts. But I should not be at risk for them in the first place. And that's what this is about: RISK. The severity of a problem multiplied by the probability it will occur. Overdraft fees do not minimize risk, and thus they are not rationally justifiable. They disproportionately transfer risk from the bank to the customers. (That is, for every unit of risk the bank saves for themselves using over-draft fees, they deliver more than one unit of risk to their customers.)