Apparemment, j'avais besoin de faire GRANT EXECUTE ON FUNCTION au lieu de GRANT EXECUTE ON PROCEDURE .
On pourrait penser que si GRANT EXECUTE ON PROCEDURE n'a fonctionné que sur les PROCEDURES que le message d'erreur devrait indiquer "Code d'erreur :1305. PROCEDURE businessDayDiff n'existe pas" au lieu de "FONCTION ou PROCEDURE"...