This is a terrible idea, IMO. Miners and full nodes should be able to decide which transactions to relay and include in blocks, and which transactions to not. An option to set a minimum amount per output or transaction should be built in to the client. So miners, if they believe transactions below a certain size to be dust, should set the option to not propagate transactions below that certain size. In this way, the free market would choose an appropriate minimum transaction size, as people could be waiting for days or weeks for their transactions to propagate the network and/or be included in a block if they are too small.
I can see all sorts of unintended consequences coming out of this. This is a fundamental change of Bitcoin, and really seems to go against the idea of freedom of financial transactions. Now, we will be regulated to only sending transactions of a certain size. No free market choice here...
Bleh.