You should be able to change the name by selecting the crosstab->format crosstab and selecting the column field. Then click on Group Options and check customize group name field--BUT this doesn't work, I discovered, as I guess you did. The datatype remains the same even if you create a string name formula, so the custom name doesn't display correctly.
So, instead create a formula {@qtr} to use instead of the date group you used to define your column.
if month({Orders.Ship Date}) in 7 to 9 then "1st Qtr " + totext(year({Orders.Ship Date}),0,""

else
if month({Orders.Ship Date}) in 10 to 12 then "2nd Qtr " + totext(year({Orders.Ship Date}),0,""

else
if month({Orders.Ship Date}) in 1 to 3 then "3rd Qtr " + totext(year({Orders.Ship Date}),0,""

else
if month({Orders.Ship Date}) in 4 to 6 then "4th Qtr " + totext(year({Orders.Ship Date}),0,""
Adjust this to the calendar year, if that's how your fiscal or report year works. There is a calendar quarter function you could try also.
Once you have entered {@qtr} as your column name, you will find that it displays the column order based on the string values, so you will need to go to format crosstab->select the column name->group options and choose specifed order. The drop down box will contain the column heading values to use for ordering--just add them in the order you wish.
-LB