Building you own blockchain is not difficult, but making it secure is really hard. I am not only talking about writing secure code, but about the entire infrastructure: The security of distributed systems (such as blockchains) depends on the number of validators/miners/nodes check a state update before it is considered common truth.
If everyone just built their own system just because the software would be a little bit better optimized, we would have won nothing, because every developer would have to find (and somehow pay) enough distributed nodes to control their system. It would also be way harder for the general population to trusts them, because they are not using a known secure system like Ethereum but building their own thing.
And about Solidity being not very good for high-performance software: I agree, Solidity is way to basic ans misses a lot of functions to be used in larger software projects. But the EVM is not exclusive to Solidity, there will be other languages that compile to Ethereums assembler code that will eventually have more advanced features like threading. (Assuming the scaling problem gets solved and Ethereum manages to handle Millions or even Billions of transactions per second.
And the last argument: Compatibility. Ethereum is the largest platform for tokens, so it makes sense to build a token exchange on it. There will be ways to map other tokens to the Ethereum chain in the future (Bitcoin, Litecoin, Dogecoin and many others are in the making) but this also requires more tps than currently possible.