psss.... estás manejando las fechas como cadenas??. Tienes campos especiales para el manejo de fechas como el DATE o DATETIME, te aconsejo procures usarlos que para eso están; te facililtarán las operaciones con fechas desde SQL, tiene funciones nativas (y buenas) para ello... por ejemplo, tiene DAYNAME() con la que optienes precisamente el nombre del día.
http://dev.mysql.com/doc/refman/4.1/...functions.html
... respecto a tu código... se ve bien. Verifica las variables obtengan el valor respectivamente correcto.
Saludos!