My primary point is that if I stick to coreutils, I don't have to worry about any of this. I can reasonably expect anything in coreutils to already be installed and available. Your functions seem like they'll work just fine, but either requires build tools to be installed, or the package to support binstall. For me, thinking about all these things and maintaining something like that isn't worth it when I can just use coreutils.
I totally understand. My .vimrc has shrunk from over a hundred lines to 4 lines in the last years. But I really think you are doing yourself a disservice. It is easier than ever (homebrew, nix, cargo, pip) to get nice software everywhere.
Your scripts could have a prolog that installs rustup and calls cargo.
There is also https://github.com/ryankurte/cargo-binstall
Even after 20 years of bashing, my bash skills still suck. So many corner cases!
But if you include this, and call install_utils at the head of your scripts. It should install the tools on demand.
I don't recommend using this, it is just illustrative.