I have, and you do have to be careful about dust. The best way to drain a wallet is to sweep the keys into the wallet you want to move your coins to, but not everything supports that.
If you use a regular transaction to drain it, make sure you are using a wallet that allows you to directly set the fee. That way, if you are about to leave behind a dust amount, you can increase the fee or the transaction volume by a few sats to make sure there is no dust.
In the case that dust is left in a wallet, you have three choices. You can just leave it there, but there has already been enough burned bitcoin due to negligence that you really shouldn't do this. You should instead sweep the private keys into another wallet (I know that Samouri supports this but I am not sure what others), or you can send enough bitcoin to the wallet to cover a fee then send it all to a different wallet.
There are also a bunch of privacy concerns with dust, but this comment is already long enough. Hope this helps!