Instanced Static Mesh Editing in Blueprint behaves weirdly when inherited from C++

Hi, when I add an ISM component to my C++ actor like this:

UPROPERTY(BlueprintReadWrite, VisibleAnywhere) class UInstancedStaticMeshComponent* MyComponent;

…and then add mesh instances in the Blueprint editor of a Blueprint subclass of that C++ actor, the behaviour is strange:
Normally, when I add and ISM component directly to the Blueprint actor, I can select mesh instances in the editor viewport and move them around (instead of manually entering the positions in the properties window). But ISM components inherited from a parent C++ actor, only the 3D gizmo moves, while the mesh stays at its previous location. Only after clicking on another mesh instance, or recompiling the Blueprint, the viewport is updated and the mesh instance is drawn at its proper position.

Is this a bug or is there something I’m missing?

Bonus Weird Thing:
Before that, I tried creating my own UInstancedStaticMeshComponent C++ subclass and use that in my Blueprint actor. But all the cool “move instances around in the editor viewport” functionality is disabled for my subclassed component and I can’t see why.