Hola Diego,
Sí, creo que la confusión se da en el objetivo de cada una de esas variables. El esquema de vacunas del refugio mantiene la información de cómo se debería ver un esquema de vacunación completo para un perro. Se debería usar en la última función para determinar cuáles son los perros a los cuales les faltan vacunas. Para vacunar un perro simplemente se precisa el esquema de vacunación del perro en cuestión, el cual se obtiene de la tabla (o según la letra de la función, si no existe, se crea).
Saludos,
Federico