I do not see any information leak in the "888" UTXOs since they are sending them to so many addresses, the addresses are only related as a large arbitrary class (all addresses above a certain value threshold, etc.) and they not attempting to "tag" all addresses in a specific wallet.
The reasoning behind a dusting attack is that you can compromise your privacy when you make a transaction.
Say you have 3 addresses holding 1000 Bitcoin each. Let's call the addresses 1A, 1B and 1C.
You receive 888 Satoshi on each address, and want to buy a pizza. If your wallet chooses to pay 0.01 Bitcoin from the large UTXO on address 1A, and add the 888 Satoshi from 1A, 1B and 1C to
consolidate them, it becomes known that 1A, 1B and 1C are owned by the same person.
This can of course be prevented by manually selecting which inputs to use ("Coin control" in Bitcoin Core, also possible in Electrum and no doubt in many other wallets), but I can imagine not everybody uses it.
I see your point and you are correct for any legacy wallets that behave this way.
I only use HD wallets and I believe this is not an issues for any well designed HD wallet since it will only use multiple input addresses when it must (when the output is larger than is available in one address). In this case even if there is no dust the two (or more) HD addresses required to fulfill the output will be tied together by the transaction itself. The addition of dust to each of the inputs does not tie them together any more than the transaction without dust does.
I see one small timing related issue, assuming an HD wallet:
1) HD address n is discovered and queued to be "tagged" with the dust.
2) HD address n+1 is discovered and queued to be also tagged with the dust.
3) Before the dust arrives HD address n is spent with no tie to address n+1.
4) The dust arrives on both addresses
5) Now a spend of address n+1 happens
6) The wallet will probably spend the dust on address n, the dust on n+1 and the rest of n+1
So in this case n and n+1 are tied together in a case where they would not normally have been tied together - due to the timing of the arrival of the dust, but remember that these two addresses would have been tied together anyway if the first spend had been large enough to "overflow" into n+1.