Kdiff3 versions 1.9.0 through at least 1.9.5 have a bug detecting Windows line endings, so they add extra line breaks to files.
Bug: https://bugs.kde.org/show_bug.cgi?id=442199
The latest version that doesn't have the bug is 1.8.5. Download from the KDE attic: https://download.kde.org/Attic/kdiff3/