Думаю так будет лучше и проще, попробуй описать свой функционал в колбеке.
А твой код вроде правильный, ничего необычного в нем нет, ну не считая этого:
Но оно не должно мешать.
Есть подозрения, что твой хук конфликтует с оригинальной функцией, но это надо отлаживать код, больше и идей нет.