For some reason when running kpgcheck inside cygwin, it failed to find WinMergeU.exe - though a fresh python session inside cygwin shows that the file does exist. Probably something about the way cygwin deals with spaces in filenames, or other filename encoding issues.
It would be great to find out why cygwin was dying, but regardless, kpgCheck should offer some alternatives to winmerge, like at least listing the two filenames that are to be compared.