I also have experienced the problem of being told one thing and than just like a auto mechanic once I pop the hood and take a look for myself find that generally it was user error that caused a problem.
In these cases, although you don't want to accuse a customer of fowling up their own system, you can let them know that the problem you detect is the result of...[ and make your feeling known indirectly ]they will usually get the hint and except the fact that they conveniently forgot to tellyou a bit of information. in these cases payment for your time could be charged at a flat rate., if as in most cases it was a house call (business) travel time should be compensated billed as your physician would bill you for coming in with a cold, You already know you have a cold, yet you pay to hear him/ or her tell you anyway.
Not to say you should have to pay a tech mucho denaro $$$ just compensate for the time to tell you that you screwed up your system.
If it was in fact a hardware problem and it was described over the phone as a software conflict... Well, the initial travel to come out and make the correct diagnosis should be charged as well. Even though you did not fix the system, it should be added to the bill, you have to leave and come back again with the replacement part right. I found that as long as you treat the customer as a friend, respect them, don't talk tech talk, show them and inform them of what the problem was, basically being the only honest guy in town. they not only will call you each and every time they have a problem... but won't mind paying an initial diagnostic fee for a good tech. Keep it reasonable.