So what makes the "default" vhost in apache a wildcard for unconfigured domains? ie. what makes this vhost be loaded over anything else when you try and load a domain that isn't configured, in a web browser? I have a feeling it could just be the lack of ServerName and ServerAlias arguments?
I have just set up a new Apache instance and created a new vhost alongside the default. Even when I specify a ServerName, run a2ensite and reload apache, it still loads the default page from the default vhost.