systemd has something called 'targets' which can be thought of as the runlevels of init. prefdm.service will be run with the "default.target" which is set by default to "graphical.target".
So, by setting the default target to "multi-user.target" (aka. SystemV runlevel 3) you will start all but the X11-server. Your vncserver@:[0-9].service will be unaffected by that.
To do so, simply type:
sudo ln -fs /lib/systemd/system/multi-user.target /etc/systemd/system/default.target