Cita: WHERE img.id_album = '2' AND principal.id_foto IS NULL
Ten cuidado con esta condición. Si principal.id fuese NULL, no te devolvería puntuaciones, según me parece, porque es parte de las condiciones del FROM.
Si lo pones para que te devuelva ceros en las no votadas, lo que debe ser es OR no AND.