For what people talked about that bug I understand this (disclaimer: could be totally wrong)
DirectX needs an order for transparente layers. With the winshield you know that it will be in front of (closer to you) the smoke, so you can fix that. But a fence can be in fron or behind the smoke, hence you can not make it work always.