I usually mix ports and binaries anyways because I don't want to wait weeks for a package to build but I also need the latest version of some things and/or something is not available in the ports tree as a binary
Me too and I find that if you only use ports for applications that are not dependencies, you can never break anything.
So if I need SDL2, I will grab a package (because I don't really care about being the latest version), but if I want the latest version of Gimp or Blender, that the packages are lagging behind, I will simply build it as a port (only a port, I will use packages for the dependencies).
Since I know that nothing has a dependence on Gimp of Blender, I am 100% guaranteed that my system will not break.
This is because ports are flexible and will target any version of a libary you have installed; whereas packages often have hardcoded version numbers.