You are over-complicating it, you only need `#!/bin/busybox ls` as the entire contents of the file.
This doesn't work. The eventual command would be /bin/busybox ls /path/to/ls/wrapper ...
It can already do that, afaik. When I last checked, BusyBox supported installations via 4 methods:
- symlink
- hardlink
- shell script wrappers
- executable binary wrappers around libbusybox
Not that it couldn't be fixed by changing how we handle login shells but still. Worth remembering.
Similarly the busybox situation could be solved by having busybox ship posix shell wrapper scripts which use `#!/bin/busybox sh` as the shebang and simply consist of a line like `exec /bin/busybox ls "$@"`.