Flex queue mmrs were initially seeded from people dynamic queue mmrs, but people have largely not taken flex seriously so end up lowering their flex mmrs (by playing unfamiliar champs or otherwise screwing around) or not grinding them to their 'true' skill level, which results in further mismatched matches, which makes people take it even less seriously, and so on.
They can't just match it to ones solo mmr since some people are legitimately at different skill levels in a team then they are solo. Some people have the individual talent to thrive in the uncoordinated yolo party that is solo queue, but their overall strategy may be lacking so they get crushed when they face actually competent teams that have coordinated team plays (so their 'true' solo rank would be higher than their 'true' flex rank). The reverse is true as well, where there are people who may not be great mechanically, but their shot calling and ability to orchestrate team plays is strong (so their 'true' flex rank would be higher than their 'true' solo rank.