Hey, setting velocity for kinematic Rigidbodies is undefined in PhysX. See error here: PhysX/physx/source/physx/src/NpRigidDynamic.cpp at 4.1 · NVIDIAGameWorks/PhysX · GitHub
We used to allow that accidentally, but the bug report that Melv linked to brought to light the fact that this setter on a kinematic Rigidbody causes undefined behavior, meaning you can get different simulation results setting the exact same velocity in the exact same scenario.
Unity is shipped with release build of PhysX where these error checks are not present so we added one on our side.
The best way to control kinematic Rigidbodies is through the Move/MovePosition/MoveRotation methods.
If your inputs are velocites, you could use Move methods to apply them. The Move methods essentially set the required velocity to reach the target in 1 step like this: v = (p_target + p_current) / dt
So you could set the target to p_current + input_velocity * dt each step.