Wow, I have been busy and missed all the comments...
I could not unwrap myself out of the shell string issue, so after spending way too much time with that, I made what any sensible soul would do under similar circumstances, I gave up...
But since I only needed file size and lastModifiedTime, I fixed it using FileWatcher (for the modification time, very easy) and for the file size, I just gobble the file into a byte array and use the size of the array. That's pretty ugly but it matches exactly what Windows is reporting so I am going to call it done, considering that it is not intended to use in a product that I will release, it is just a utility for me, and I only deal with 2 or 3 dozen files at a time that are < 100kB each, so it's quick.
Other advantage is that I may end up having to do a crc on the files, so having them in a byte array is just a function call away from having that too
Thank you Mark in particular who took it personally and tried very hard. Not sure why we are getting different results, I will dig into that some more at some point.
Thank you all for the suggestions, I will go over everything in the next few days. There were multiple useful tidbits and suggestions that I may use for other things.