EDIT: TL;DR: The problem of integrity of certain business models is fundamental because of how Bitcoin works, and it's not going to go away with time on its own.
Bitcoin system assumes that a business with a good reputation has the integrity to deliver goods in exchange for received bitcoins and would not disappear with customers money because it had to spend a lot of time to build the reputation in the first place.
The only purpose of a business is to make profits as big as possible. An overwhelming majority of examples prove that any other motivation, including personal moral values, doesn't matter in the long term. Reputation is built by a business in order to gain profit, therefore trashing it is irrelevant if stealing would result in even bigger profit.
So the flaw is that the incentive to steal emerge the moment a business finds it self in a situation where a theft would earn more money than any possible future profit, and the level of anonymity provided by Bitcoin makes the theft probable because it is very hard to legally pursue those responsible. Scams happened over and over again, and with each iteration it's getting bigger. Reputation system works well when customer has the ability to recover funds in case of a fraud, but it doesn't work very well in Bitcoin environment. Escrow system can help with the problem but there is a business cases where it can't.
A business that holds customers bitcoins such as eWallet and Trading Platform has to have full control because it needs two features, instant transactions and scalability, for example, it is not possible for a Trading Platform to settle Bitcoin transactions between its users using blockchain, there is just too many of them and Bitcoin Network wouldn't be able to sustain it.
There is a technical solution, that's waiting to get implemented, it provides those two features without giving full control over bitcoins:
Trustless, instant, off-the-chain Bitcoin payments . In short, the business would have control over only executed transactions and not full balance, if a customer doubts its integrity then he could just stop using the service and that will guarantee full recovery of his balance.