MacVim uses a login shell, as Terminal.app does, however it is not an
interactive shell. For bash, this means your PATH settings need to be in
~/.profile not ~/.bashrc. I'm not sure about zsh, but check its
documentation for where to put commands to run for all login shells
(whether interactive or not) and it should work.
Smiles,
Ben.