1. Printer
- If your printer can't output the proper colors and have a high enough dpi then any software would be useless.
2. Printer ink quality
- Some refills differ in the color of genuines.
3. Paper quality
- If the paper's density and quality is not good, then even the best printer couldn't do anything with it.
4. Software
- This is actually the least of your worries, even the default windows wizard printer is good enough as it just sends the data to the printer. This would be a different case if you need a specific color profile.