berrybrew is not meant to be a user-specific software, it's system wide, so there's not much sense in placing a configuration file inside of a user's home directory. This is due to how PATH env var works on Windows. Two users can't simultaneously be using two separate versions of Perl, so I don't see much sense having multiple instances of berrybrew floating around (ie. instance per user). The system paths takes precedence over user paths, so if someone installs Active or Strawberry Perl as a system perl, none of the berrybrew perls would take effect. This is unlike Unix, which is why Perlbrew can work the way it does (per user).
That said, I'm not even a Windows user, I use it only for developing this software, so if you have any suggestions on how to make it better, I'm all ears.
Might I ask what it is you have against using the registry? I'm legitimately curious. I'm always interested in hearing from others in order to make my software better.
Update: I would love to learn how to make it so that A) it would work per user, and B) refreshing the environment on each change wasn't necessary. I have tried repeatedly to achieve these goals, but obviously, to no avail.