A coding error in GNU patch version 2.5.4 causes it to always use `~', but this should be fixed in the next release.
patch