But why $cygpath -w pwd and $cygpath -w $pwd is not working?
Git 2.15.x/2.16 (Q1 2018) illustrates that issue, due to UNC paths being also relevant in Cygwin builds and being now tested just like Mingw builds.
See commit f21d60b (31 Oct 2017) by Adam Dinwoodie (me-and).
(Merged by Junio C Hamano -- gitster -- in commit b169d18, 09 Nov 2017) 
t5580: add Cygwin support
t5580 tests that specifying Windows UNC paths works with Git.
  Cygwin supports UNC paths, albeit only using forward slashes, not backslashes,
  so run the compatible tests on Cygwin as well as MinGW.
The only complication is Cygwin's pwd, which returns a *nix-style
  path, and that's not suitable for calculating the UNC path to the
  current directory.
  Instead use Cygwin's cygpath utility to get the
  Windows-style path.
That is why the test now uses:
alias winpwd='cygpath -aw .'
BACKSLASHED="$(winpwd | tr / \\\\)"