Bitcoin doesn't make people do bad things
You wrote a very nice argument, with which I mostly agree. It is just your use of the word "make". If you meant "make = force", then I'm fully with you.
But if you meant "make = induce" or "make = enable", then in my opinion you are wrong. Especially on the purely software technical side this project became a great enabler and inducer for incompetent programmers.
Looking purely at the effects it is hard to distinguish incompetence from the opportunistic treachery, cf. bitfloor fiasco. But the end result can be widely observed: Bitcoin started as a rather low-quality proof-of-concept code. It had no (or very few) remote exploit-style faults and this somehow became equivalent to the claim that Bitcoin is almost perfect "Mona Lisa"-quality financial code, cf. Dan Kaminsky presentation.
Well, the reality is that Bitcoin is far from perfect (in the financial software engineering realm) and has an unfortunate property of attracting some of the worst programming anti-talent. The profession of software engineering is completely unregulated, neither legaly nor morally. This is unlike eg. construction engineering, where enough people died in collapsed structures or simply lost the roof over their head to understand the value of the "building code". Similarly, one doesn't have to be electrical engineer to understand the value of "electrical code" or a firefighter to understand the value of "fire safety code".
There's still not enough people who lost their savings or operating funds to make the broad Bitcoin users community understand the value of high-quality software.
At least the bitomat.pl operator did his share and is now a perfect example of what will happen if you disregard the word "ephemeral" in the documentation of Amazon Web Services.
If you are skilled in programming, why don't you just make an alternate chain?
Bitcoin has serious problems that could use fixing. There is no way you are going to convince the developers to fix them. They will just deny the existence of these problems.
If you make an obviously better product, you can convince users to adopt it. Just making the back-end better is not enough, however. You need to offer users some salient new features.
Key problems include:
1) Long-run sustainable blockchain [don't know anything about scalability etc., but the bitcoin system will not be secure without block reward. I am sure of that. This is part of the back-end.]
2) Wallet security [There is no reason why users should have to expose their entire balance to theft whenever they send coins. Fixing this would be a salient new feature.]
You suggest that there are other issues. I don't have any programming expertise and cannot comment on these. Why not fix everything you can and release a higher quality product?