I had this same problem.
I noticed when I removed the text color settings from the DirectoryItemStyle, the directories would take on the DriveItemStyle. I'm no TreeView expert, so I assume it's normal for child tree items to inherit their style from their parent.
In any case, this gave me the idea that perhaps the DriveItemStyle's IsLoadOnDemandEnabled being bound to IsReady was somehow interfering with the DirectoryItemStyle's IsLoadOnDemandEnabled being set directly to True.
Taking a shot in the dark, I added a property to Directory called WorkAroundForceTrue and bound DirectoryItemStyle's IsLoadOnDemandEnabled property to that. I set WorkAroundForceTrue to true in the Directory constructor.
It works!!