DATEDIFF() te devuelve el valor en
diías entre dos fechas, por lo que no resulta adecuado para calcular una diferencia de minutos. En todo caso lo que te conviene es usar TIMEDIFF() o TIMESTAMPDIFF() contra CURTIME() o NOW() y no contra CURDATE().
La idea sería mas o menos así:
o bien algo así:
Solamente debes recordar que las funciones que usan DATETIMEs son sensibles a nivel de segundos.