This is needlessly burdening the customer, which in my opinion is the textbook definition of bad customer service. The days of hand-written checks in the consumer space are largely gone; and the bank knows at any given moment what the customer's current account balance is and which transactions are pending. Permitting a card-based withdrawal or debit request that the bank already knows is likely to result in an NSF at settlement time is both misleading and adversarial to the customer.
This entire issue would grind to a halt immediately if banks properly denied debit requests when permitting them would yield an NSF.