For starters, all that inventory you're talking about is being picked up by somebody else, stored at times, moved and then installed.
How many times is each piece being touched and re-touched, and how many chances to be broken or damaged before the job is complete?
Just picking up a bowl and setting it down too hard on a concrete garage floor can damage it. How do you determine when that happened? Did the painter move it and break it? Was it damaged while carrying it upstairs?
If you want the online pricing, which is delivered to your current home, then who do you pay to deliver to the job site, and move that product around during construction? And who takes the "hit" if there is a problem?
I tried to ship $2,000.00 of plumbing product with Oak Harbor Frieght here locally in Washington, and they managed to smash all of it. I was out $2,000.00 because they said I couldn't prove that they smashed it in the warehouse before they loaded it. I had mistakenly told the guy that loaded it on the pallet to be careful. He didn't like that.
Anyway, part of that expense is taken up by them "babysitting" and "taking care" of "your" product.
And then there is the question of whether you're even getting the good stuff from the box stores. I won't buy there.