VIA is heavily government subsidized and without that does not make a profit. Also, for the long haul (coast to cast) it is quite expensive. Back in the day there was CN and CP passenger service which eventually became unprofitable. VIA rail was created by the government to try and preserve some passenger service. Taxation from many sources supports the rail service, which could not operate without this infusion of cash. Part of the $32 Greyhound fare you speak of goes to support your "free" rail tickets.