El error está en usar «deber de» con el sentido de obligación. Actualmente,  se admite usar «deber» sin la preposición «de» con el sentido de suposición, que se tiende a omitir para evitar cacofonías como «debe de decir». Por tanto, la frase  del ejemplo es ambigua, pero no incorrecta:

> Has debido estudiar duro. 

(Supongo que has estudiado duro.) ✔ CORRECTO  

(Tenías que haber estudiado duro.) ✔ CORRECTO

> Has debido **de** estudiar duro. 

(Supongo que has estudiado duro.) ✔ CORRECTO 

(**Tenías que** haber estudiado duro.) ✗ **INCORRECTO**

Es decir, «deber» más infinitivo expresa obligación o suposición, según el contexto:

> Has debido pasar miedo ¿verdad? 

(Supongo que has pasado miedo). 

> ¡Has debido coger el dinero, idiota! 

(Tenías que haber cogido el dinero).
 
Mientras «deber de» más infinitivo solo indica suposición.

> Has debido de pasar miedo ¿verdad?. 

(Supongo que has pasado miedo). 

> ¡Tú has debido de coger el dinero, ladrón! 

(Supongo que tú has cogido el dinero)