Ah! Makepanda uses “-framework Python”, which in your case probably happens to consider the system Python version before your own custom Python version.
I wonder how to force it to use a custom framework. Alternatively, perhaps you can link against libpython3.4.dylib (if you have that?) by finding these lines in makepanda.py
if not PkgSkip("PYTHON"):
if GetTarget() == "darwin" and not RTDIST and not PkgHasCustomLocation("PYTHON"):
LibName("PYTHON", "-framework Python")
else:
SmartPkgEnable("PYTHON", "", SDK["PYTHONVERSION"], (SDK["PYTHONVERSION"], SDK["PYTHONVERSION"] + "/Python.h"), tool = SDK["PYTHONVERSION"] + "-config")
…and forcing it to follow the second case instead.