I can't believe how hard this actually is!
I have a solution now, but it's rather dirty....
I am running the following batch script:
attrib +r "C:\Users\Richard\OneDrive"
attrib +r "C:\Users\Richard\OneDrive\Documents"
attrib +r "C:\Users\Richard\OneDrive\Pictures"
attrib +r "C:\Users\Richard\OneDrive\Music"
attrib +r "C:\Users\Richard\OneDrive\Videos"
attrib +r "C:\Users\Richard\OneDrive\Desktop"
taskkill /f /im explorer.exe
The attrib commands reassert a read only status on the OneDrive sub-folders which reinstates the correct icons there. Then by forcing a restart of explorer.exe the link-folders in C:\Users\Richard are finally showing correctly.
Everything falls apart when OneDrive does a sync though, and this script needs to be executed again.
Oh well, I can't think what else can be done. Roll on Windows 10!