Windows: fix scsi_cmd (return, GENERIC_WRITE)

Sending scsi commands needs GENERIC_WRITE for the handle,
otherwise no data is returned.

For DeviceIoControl a return value of 0 is the error condition,
while the return value of scsi_cmd is expected to be 0 on success.

We now return the scsi status as we do in Linux.