It can be difficult to accurately forecast low visibility even under the best of circumstances. My local airport (KELM) is subject to dense ground fog in autumn in the early morning hours. The airport is in a valley, and is in the lowest elevation in that valley. The coldest air in the valley tends to pool at the airport. When fog does form, it is often found only at the airport and the immediate vicinity. You can drive 3 miles east or west and find unlimited visibility, but at the airport itself the visibility will be zero. If viewed from above, I’m sure it would look just like a “METAR circle”.
The local NWS office in Binghamton, NY generates the TAF forecast for KELM. They use a high resolution model that is updated every hour, and in spite of that, sometimes the forecast is wrong. Often they can say with almost 100 percent certainty that fog will form beginnning at (say) 0500 local and indeed it will. Other times they will predict fog that does not form - or do not predict fog that does form.
In those cases, the TAF will be updated based on real-time observations. It is also difficult to predict accurately when the fog will lift. I have seen TAF predictions that the airport will become VFR at 0900 local, but the fog actually hangs in until 1100. A one or two degree error in predicted air temperature or a one or two knot error in predicted wind velocity can cause the HRRR model to “miss” the forecast.
In MSFS, when it is foggy at KELM it will also be foggy in the sim, specifically because the sim is using METAR for airport visibility.