I look at Cross Country like this.
Imagine you are standing on Platform 2 at Truro at 7 a.m. on a weekday, and you see about 75-100 people standing on the platform opposite, Platform 3, and the announcer calls out the arrival of the 06:28 (1S43) XC Penzance-Glasgow service and calls out all of the 30 stations from Truro to Glasgow and the 220/221 Voyager rumbles out of Highertown tunnel onto the platforn and you count 4 carriages to make the journey to Scotland which are already 2/3 full of passengers. Would you want to decide to make a journey from the South West to The West (Bristol) The Midlands, The North East or Scotland on such a train?
Again imagine you are standing at Montrose on a Saturday Morning and again the station announcer calles the arrival in 5 minutes of the 08:20 (1V80) XC Aberdeen - Penzance service and calls out all 44 stations to be called at from Montrose to Penzance and you think to yourself when you see the 220/221 Voyager trundle past Montrose North Signal Box, who would want to take a journey from North East Scotland even to North East England on a train on which there is limited space and next to no legroom?
Lets face it, all XC services are now a mix of local services and regional inter-city services cobbled together to show a service from one end of the country to the other, avoiding London. There are too many stops. The number of stops within Cornwall can be drastically cut, After Penzance, I'd suggest, Truro, St. Austell, Liskeard, Plymouth. Then, travelling up country. Exeter St Davids, Bristol TM, Bristol Parkway, Birmingham New Street, Derby, York, Newcastle, Edinburgh, Glasgow, or if heading towards Aberdeen, Dundee and Aberdeen. Surely this routing would speed up journey times. If passengers need to connect to other stations now called at it wouldn't be too difficult to use connecting trains. I am always amazed that XC call at Chesterfield, Sheffield, then Wakefield and Leeds before heading to York. It seems to me that XC tries to be all things to all people, and bows to any winger who wants a service from their town/city to everywhere else on the network.
The other thing that is needed on XC services are more carriages and better traction.