I don't know the precisely how Unreal manages instanced materials, but I do know the hardware usually wants each material to be delivered on its own. So if you have 6 instanced materials on one mesh, this is usually going to be sent to the card in separate chunks. Each chunk of triangles that shares the same material.…
You have a mesh with 3 material slots, that's all that matters. If you have 3 material slots that's 3 drawcalls to render that mesh, no matter what materials are assigned. If you have 2 versions of the same mesh that have 3 matIDs each, it's 6 total draw calls no matter if they share materials or not.