Your sentence is correct. "Không có phụ nữ xấu" Xấu means urgly, not beautiful, not bad.
There isn't a bad woman or there aren't bad women. Shouldn't both of those be acceptable?
We don't say it that way in English. It's an awkward sentence to begin with, but if English speakers were to say something like this, we'd say "There are no bad women ".