Simple user error.
Nothing is ever that "simple". Sites should strive to make things transparent. It is a better/cleaner interface to ask the user the amount they want to withdraw and then add the fee to that and show the user the total.
As an example billpay for consumers is often free, but billpay for businesses is often a charge. I think we pay $0.20 or something like that. I don't have to make sure to add $0.20 to the amount of the billpay because the bank will deduct it. The bank pays what I ask them to pay, and they deduct the $0.20 from the account balance.
I mean if you leave it all on users and say "user error" then why even have websites. Give users instructions and have them manually construct the TCP/IP packets to communicate with the service. Ok I wasn't being serious on that one but you get the point.
Agreed deducting fees is a poor model. Customers are going to be inclined to withdraw the amount listed on the payment page; therefore wallets and exchanges should be consistent with the general consensus that fees are added.