It's just like car mechanics. When people don't know about cars, they tend to err on the side of not spending a bunch of money up front if they don't have a solid, tangible reason to. And just like IT, it doesn't help that there are shitheads out there who will lie through their teeth just to charge a little bit more.
For example, I used to work for a small business that outsourced their IT. Before I got there, every time they upgraded a workstation to a newer machine, the IT guys billed SIX HOURS of labor just to reconfigure the OS and install relevant programs. They did this individually for every machine, so if the office upgraded three boxes at once then they sent three technicians over the weekend and billed for 18 manhours of labor. 18 hours for some minor config changes, a quick addition to the domain, a browser swap, and installation of Adobe Acrobat, Office, and a database client. I convinced management to drop them after I found out, but management never really trusted any IT again except for me (and I wasn't even working for them as IT).