Given the priority inversion you detected for mountainbike as identified and commented I agree with your proposed change to remove this difference.
For race bike the most important thing is that network routes with bad surface do not get boosted in priority. I verified that following additional testcase in RacingBikeTagParserTest::testHandleWayTagsInfluencedByRelation :
osmWay.clearTags();
osmWay.setTag("highway", "track");
osmWay.setTag("surface", "asphalt");
assertPriorityAndSpeed(VERY_NICE, 20, osmWay, osmRel);
passes. Maybe we could add this testcase there and remove following outdated comment in line 188 of RacingBikeTagParserTest:
// relation code is PREFER.