I'm not sure what the issue could be, perhaps you can do something to ensure the path exists before you call upload. You could try adding a file browse dialog so you know the path you are getting is correct as a test.
Let me know if the problem still persists if you have verified the path.
Regards,
Barry R.