Well I'm not sure what happened, but after restarting apache manually without the NameVirtualHost 443 in the conf file, the certs still work properly.
I'm still confused however about the error message:
[warn] VirtualHost 192.168.0.51:443 overlaps with VirtualHost 192.168.0.51:443, the first has precedence, perhaps you need a NameVirtualHost directive
grepping the whole /etc/apache2 directory and below for VirtualHost shows there is only one definition for each IP on port 443, so I'm not sure why the warning says there are two. However, it's only a warning and the sites work, so I'm not too fussed right now.