Of course you could try, but (I predict) you will fail. The problems I've cited are fundamental problems that are built in to the bitcoin protocol by design. You can't patch your way around them.
For example:
> which has nice UI and double checks everything
How exactly are you going to "check everything"? Remember, you have to get it 100% correct. Failures are completely unacceptable because failures are completely unrecoverable.
AFAIK, most of the errors happen because users mistype the address or confuse the commission fee/amount fields, etc. UI could possible introduce some validations for fee/amount issue and probably require to retype the address or something else to avoid the other issue. Another issue is fraud, but it is a unavoidable product of such system, otherwise we end up with same problems traditional banking has. Fraud check means someone might deny the transaction even if your transaction is completely legit, for example, just because you are a citizen of a blacklisted country (my experience).
It is easy to dismiss bitcoin when you are a citizen of 1st world country -- because you are insider and have full privileges, but when you are outsider, it gets very complicated and things like bitcoin give some promise.
Indeed.
> It is easy to dismiss bitcoin when you are a citizen of 1st world country -- because you are insider and have full privileges
That is a very good point, and very easy for someone like me to lose sight of. Nonetheless, I think the answer is not to hand over the final arbitration authority to an algorithm, but rather to design a system where there is an open market in trust. Starting a bank should be as easy as starting a blog. The trick is to come up with a system of checks and balances so that someone who runs a crooked bank can be immediately and unambiguously called out.