Although the underlying object code may be the same between the platforms, non-trivial native applications can't be binary-compatible between Windows and Linux.
If Linux executable you are trying to convert is dynamically linked, it would require the presence of libraries that don't exist on Windows (you can see this list of libraries by running ldd /path/to/program
on the Linux machine).
Even if you converted all the libraries to PE executable format or statically linked them, the system calls to the NT Kernel and Linux kernel are completely different. There is no direct one-to-one correspondence between them.
You best option would be to find the source code for the original application if possible. If the program is written in a portable way, it may compile on both Windows and Linux. Even though the system calls are not the same between the two platforms, a subset of their C library implementations have standardized behaviour.