I am the author of a program called Crossword Express (CWE). It is a Java program which means that it will run equally well on Windows, Linux and Mac OS. You can create puzzles manually or automatically, or you can preset certain themed words, and allow CWE to complete the construction process. A wide range of output options is available including the ability to print a submission document according to NYT specifications.
CWE does much more than make crosswords. It can create Acrostics, Word-search, Sudoku, Killer Sudoku, and Minesweeper puzzles plus a number of lesser known puzzles, some 28 puzzle types in all.
Web-Apps can be exported by CWE to permit the publishing of interactive Crosswords and Sudokus on the 'net. Numerous additional Web-Apps are planned for the future.
It is distributed as Freeware which means that you are not obliged to pay for it, although contributions would naturally be welcome.
I would be happy to receive suggestions for program enhancements which would make the program even more suitable for puzzle developers.