This is a bug in zenbership!! That no one has reported it to them is telling of how many Windows servers are running it .... none
It took a while to figure this out fully. It's not hard seeing what is going wrong but why it was took awhile because it's subtle.
$path = str_replace('/setup', '', dirname(__FILE__));
The str_replace is failing on Windows because dirname(__FILE__) returns the current path with \backslashes.
for example F:\www\zenbership\public_html\setup
str_replace is looking for /
setup which will never match so the directories it needs writable do not even exist since the \setup is not removed from the path .
For example F:\www\zenbership\public_html\setup/admin/sd-system does not exist.
So, on line 29 of setup/index.php and line 41 of setup/process.php change the /
setup to \