I've tested this with 4.3.2 and 5.0.5 beta and I can reproduce it in both versions. If remote site contains a directory that does not exist on local site, WinSCP doesn't update ANY of the subdirectories on remote site. Root directory is still updated. It recognizes the changes in all folders though, it informs that directory has changed but doesn't upload any files. After all remote folders exist on local site, WinSCP works correctly.
I'm using GUI with no scripts. I'm using SFTP with Commander interface. My operating system is an up-to-date Windows 7.
If a new folder is created on remote site and the Commander's remote view is not refreshed, the problem doesn't occur. It requires the remote view to be refreshed to reproduce the problem.