Yes, there is a strange behaviour with some values of Direction, specifically 0, below -45 and above 45. Anyway, in my tests i don't see any difference between viewport and render.
Please, send us a test scene to check this issue using your surface. We will investigate it further.