Очевидно трябваше да направя GRANT EXECUTE ON FUNCTION вместо GRANT EXECUTE ON PROCEDURE .
Бихте си помислили, че ако GRANT EXECUTE ON PROCEDURE работи само върху ПРОЦЕДУРИ, при които съобщението за грешка трябва да казва „Код на грешка:1305. PROCEDURE businessDayDiff не съществува“ вместо „ФУНКЦИЯ или ПРОЦЕДУРА“...