Swapping Skeletal Mesh at runtime. Anim class rejects it

I have a C++ project which has three skeletal mesh characters.
Abe, Kaya, Mr Emireh. (mixamo characters)

I have one main ACharacter class Abe, this class has as BP around it…
I then created two new inherited blueprints for the other two characters, they both inherit from the Abe blueprint, only difference is the skeletal mesh for each.

I have an animation class that works just fine with all of them… If I swap out each of these characters in the GameMode blueprint, they all animate just fine, their various functionality works fine…

Testing in PIE with Number of Players = 2, Net Mode = Play As Listen Server.
Right now, I get multiple Abe characters as expected, no matter how many players I add and they can all run around just fine. Same when I change the Default Pawn to a different character blueprint…

However… I am trying to create “Team” functionality in my game and as part of that design, I planned on (for now) leaving the default pawn alone in the GameMode.

The design is to do a runtime swap out the skeletal mesh to use either the Kaya or Mr. Emireh skeletal mesh.

This is working. If in my construction code of the character, it is successfully swapping the mesh. But this is where I’m coming into a problem. I am getting an error in the output window stating :

LogAnimation: Warning: AnimBP PirateAnimBP_C is incompatible with skeleton Kaya_Skeleton, removing AnimBP from actor.

Which is odd, because the anim class works just fine with the other characters when I use their BP as the default pawn in the GameMode…

Does anyone know why I would get an incompatibility issue between a skeletal mesh and the anim class?

Any help is greatly welcome!
Thanks