Seems like the reasonable thing would be asking him to compile it to Linux as he really opposes to release the source code (shouldn't be big deal though if he wrote it "posixly"),
Cygwin is a "layer" that provides Unix API under Windows and Wine is a "layer" that provides Windows API under Linux. Since in the end of the day the software written for Cygwin end up being a windows software, the actual solution seems to be in the direction of using Wine indeed. Although I agree it sounds silly it is the way to go given the constraints. Another viable option would be more like a cannon ball to kill a fly: Using a windows virtual machine under Linux.
Just curious: What does this software do that it is so special? Couldn't you write your own?