I always question the use of wrap deformers. They are slow and heavy and 99% of the time they are not required.
In any of my tests, copying the skin weights results in an almost identical result. The only time you really “need” a wrap is when the inputs are unknown, like following dynamics or other solvers. Otherwise if you have fixed data incoming, like skinCluster and blendshapes, just copy that information to the geometry and kill wraps with fire.
Do you have any inputs that would prevent you from just copying weights?