Several use cases where users may want to send different assets to the same address in the same transaction.
Describe the solution you'd like
Better approach would be to just change ConstructTransaction in rpc/rawtransaction_util.cpp so that the duplicate check checks (destination, asset) pairs instead of just destination. This would be a much smaller change and then would be consistent across createrawtransaction sendmany, send, etc