The thing is in most (if not all) games where mushrooms are present devs forget or ignore the fact that mycelinium is the actual body of mushroom and that they can be huge in area they take (they are actually the biggest individual organisms to ever live on our planet well it might depend on definicion of "biggest" because im not sure if they are heaviest ,trees like seqouia might beat then here but in area taken there is no competition for mushrooms).
So i would like to propose new way to spawn and propagate mushrooms . Mycelinium would be type of dirt block that can spawn mushroom tops but any tops present would deacrese chance for or prevent spawn of others in area around them. Spread of mycelinium could be based on algorythm similar to conway's game of life with rules like :
1. If block of mycelinium have less than 3 others in spaces adjusted to it it tries to spawn new. Otherwise it becomes "inactive".
2. There is bigger chance to spawn new mycelinium in direction where it points away from others chances could be also influenced by light level , presence of trees , adjusted blocks like types of soil or air , moisture and/or presence of water source , rain frequency.
3. It dies if its exposed directly to sunlight for too long.
4. For mycelinium spawn means change adjusted soil block into another mycelinium block.
Its spread should be slow as to not overwhelm game engine.
As for generation i would imagine it as world generator first marks some vertical chunks as spawns of mycelinium (similar to slime chunks in Minecraft) then as you aproach them lets say 3 chunks away) makes simple 2d generation (flat soil plane) acording to the same or similar rules to normal spread , runs it for 40 or 50 generations (the size of this could be bigger than one chunk like 3x3 for example) and then when you arive at those chunks it checks if mycelinium can spawn on surface blocks (they need to be soil and so on). Tops would be then generated with small chance on each mycelinium block with random stage of growth.
If you find mycelinium you can dig it out as such with shovel (could need holding shift if you want to preserve mycelinium and holding shift would make it take longer to dig that block) but it will turn into normal soil block after few days (it dies) . Also mycelinium could be a semi hidden property of soil , no information on hud and texture change on grass surface of soil but visible on clear soil and in item info after diging it out.
With all of this we get immersive way to generate and farm mushrooms that can give rise to nice organic patterns in forests.