You are arguing that it's not. language problem, that all we need is perfect programers. Fine, but consider:
1) If we only had those mythical perfect programmers that never made memory safety errors in C++ then they would be following all the same rules that the Rust language imposes. Ergo it would not be any problem for them to use Rust instead.
2) Such wonderful programers would be expected to appreciate that the compiler checks everything for them. That saves them. from al the tedious mental effort of doing it themselves. Freeing up their mental capacity to think about higher level things.
3) There ate no perfect programmers. No matter how experienced and skilled and smart, humans make mistakes.
By the way you seem to me confused as to the distinction between the memory safety guarantees of Rust and program correctness and security. Memory safety of course does not ensure security. Rust does not claim one cannot write incorrect, insecure code. It would be stupid to do so.