ulTaskNotifyTake: taskENTER_CRITICAL with portYIELD_WITHIN_API

No. The official FreeRTOS API can be used, of course.
You just shouldn’t call (undocumented) portYIELD_WITHIN_API directly in your application code.
BTW Instead of using undocumented call to xTaskGenericNotifyFromISR I’d recommend to stick to the official API like xTaskNotifyFromISR.