Nice, good findings! Thanks for the update.
For me on my custom classes, I ended up not actually replicating the objects themselves, but sending the data in a struct and then newing up the object on the receiving end and setting the data in the RPC.