Your question has been asked as many different times and ways, and the answers are always different for different shoppers. Your $2/mile is the most I've heard any mystery shopper charge. Here is my method. I submit a fair price and do not negotiate.
Take a few minutes and figure how much it costs you per mile to operate your car (gas, insurance, tires, oil, maintenance). Add a reasonable amount for non-vehicle expenses such as time, motel, snow, mountains, etc., but no charge for meals since you would have to eat even if you stayed home. For example, if you pay $100 monthly for car insurance and you drive 1000 miles monthly, then you are paying $0.10/mile for insurance. Total these expenses and submit your offer.
It's trial and error after that, until you have done enough routes to have a feel for it. Raise or lower your subsequent offers according to the ratio of accepted offers you receive, which should be close to the minimum amount you would do the route for. As with any deal, it should be a fair price for both you and the company, and you should be willing to walk away if the deal is not right for you.
Remember that you are taking a day away from other jobs to shop a route. If you average daily wage is $100, then the job fees need to pay a minimum total of $100. If the total fee for all shop on the route is only $60, and it takes 8 hours to drive, shop, and return home, then you need to add $40 to the travel offer or find $40 more shops on the route.