Dynamic material instance not always drawn

Hi,
I made a few dynamic material instances and applied them on some objects. For some reason the material is not always showing up. It should not be dependent in any way on the camera position. Here is a video to show it.
[link text][1]
I create the instances starting from a base material that i created in the editor.

I have one main actor slidepuzzle which contains 24 other actors (the cubes). In the constructor i fetch the base material like this:

static ConstructorHelpers::FObjectFinder<UMaterial> matObj(TEXT("Material'/Game/TakeMeHomeAssets/Materials/Global/MAT_testSlidingBlockPuzzle.MAT_testSlidingBlockPuzzle'"));
	if (matObj.Object != NULL)
	{
		baseMat = (UMaterial*)matObj.Object;
 	}

In the BeginPlay() I create all subactors and for each I create a material instance like this:

slidingPieces[counter] = gameWorld->SpawnActor(SlidingPieceBp, &pos, &rot);
				USliedePuzzlePiece* uc = Cast<USliedePuzzlePiece>(slidingPieces[counter]->FindComponentByClass(USliedePuzzlePiece::StaticClass()));
			
				UStaticMeshComponent* mesh = Cast<UStaticMeshComponent>(slidingPieces[counter]->FindComponentByClass(UStaticMeshComponent::StaticClass()));
				
				//create material instance
				uc->matInst = mesh->CreateDynamicMaterialInstance(0, baseMat);
				uc->matInst->SetScalarParameterValue("OffsetU", 0.4f);
				uc->matInst->SetScalarParameterValue("OffsetV", 0.4f);
				mesh->SetMaterial(0, uc->matInst);
				counter++;

Note: the actor created from Blueprint contains only one mesh, which is a scaled cube from the default assets and it doesn’t have a material assigned in the blueprint. I am also using the default uv values. For the video I left all parameters the same. I did test it with different parameter values per instance and i did have correct instances, but still the same flickering problem. Any ideas?

solved: turned out my bp object actually had 2 meshes. Removing one fixed the problem.