Nonsense. I've been consulting for 13 years. The clients that are always late are routinely the most annoying, those that expect the most for the least, and with rates always below the best paying clients. I can already tell from the first interview what kind of client they are, if they balk at the price or try to micromanage time and expenses, I don't even accept the contract.
If a client is always late paying invoices, asks for discounts or expects me to work for free, I drop them. Has worked wonders. I haven't had a late invoice in like 6 years.
(On the other hand I had a client that texted me sorry whenever he was ONE day late, taking time over the weekend to set up the bank transfer, and he was the best client I've ever had. Stayed with them building up their business for 6 years)
It's simple really: I create good solutions on time, you pay for whatever I ask on time. None of this is negotiable in any way. Shit happens, but needs to be communicated clearly and be an exceptional event, otherwise something's gone wrong.