O registro tem 2 lugares onde a chave RUN está localizada. Usuário atual e máquina local.
A subchave de usuário atual só se aplica ao seu usuário. Quando outro usuário fizer login e você abrir a chave do Registro, descobrirá que a chave de execução que você definiu não está lá. Isso é normal.
A chave do Computador Local é executada como usuário do SISTEMA e, como tal,% username% também não aponta para o seu nome de usuário válido.
Não tenho certeza se o registro realmente suporta variáveis ambientais. Não é o caminho para conseguir isso, de qualquer forma.
Para que isso funcione corretamente, você precisa usar um script de login que pode ser feito usando GPEDIT.msc, Configuração do usuário, Configurações do Windows, Scripts, login.
O script em questão pode ser um arquivo .cmd com% username%.