If you believe that your presumed "indirect users" should pay for the roads, you don't accept free markets at all. The way markets work is costs are paid by WILLING, DIRECT USERS. And thus all indirect costs are built in. The people who bring goods to market pay for the roads they use just as the farmers pay for the fertilizer and diesel to raise the crops. These costs are passed along to their customers in the price of the food they buy. Should every farmer get free diesel and fertilizer (and a truck) from the taxpayer? Of course not.
Start playing the "pay the indirect cost" game and you are immediately muddling the math, making costs based on the lousy or crooked work of central planners, rather than natural free-market forces