Making an Actor Type With a Material Parameter for a Static Mesh

How can I make an Actor type that has a static mesh and a material assigned to that static mesh?
I want to make a floor tile type and then different subtypes of it that reuse a set of floor tile meshes and apply different materials to them, but this is turning out to be surprisingly complicated to do.

The issue I’m running into is that there doesn’t appear to be an option to modify the material given to a static mesh until the static mesh has been instanced.
So I added a Mesh->SetMaterial(0, FloorMaterial); call in the constructor.
That made it so that the selected material showed correctly in the details panel but doesn’t actually render in the viewport or in game (which is odd).

This must be a common thing!
What have I missed?

Thanks!