The trouble is, neither of those make money if run honestly. A true distributed exchange never has custody of anything. So there's no opportunity to steal or speculate with customer funds. (Front-running remains a possibility). It's just a back-end data service. It has to charge a commission. Most crypto exchanges are free to use; they make money either by stealing or manipulation.
Much the same is true for stablecoins. Tether just printed another billion dollars worth of Tether. Nobody deposited a billion dollars worth of USD. USDC is supposedly backed by U.S. Government securities, but is not formally audited.