Not bad, but not what I'd really call good either. I was forced to use cygwin while working on a project last year and while it gave me some familiar ground for sure but it seemed like every which way something was just... off. I can't really think of much in the way of examples at this point but I don't have fond memories. One thing that did annoy me was a total lack of decent terminal emulators and I ended up using something based off PuTTY. Cygwin was certainly better than nothing but I'll take the real thing any day.