Prince Charles, criticised for booking a trans-Atlantic flight to collect an environmental award, has cancelled a ski trip to Switzerland to reduce greenhouse gases, a palace source said on Saturday.

The decision not to take the annual holiday in Klosters was made some time ago and was part of the heir-to-throne's commitment to reduce his "carbon footprint", the source said.

Environment Minister David Miliband has questioned the need for the heir to the throne to fly to New York next week with a 20-strong entourage to collect the Global Environmental Citizen Prize from former U.S. vice-president Al Gore.

"Was it a particularly heavy award?," Miliband told London's Evening Standard newspaper. "A lot of business can be done by telephone and video link these days."

Buckingham Palace defended the Prince's trans-Atlantic trip, saying the two-day visit on January 27 and 28 was being made at the request of the Foreign Office and would include a number of other engagements.

But environmentalists accused the prince, renowned for his green leanings, of skating on thin ice.

"It's the equivalent of turning up to an Oxfam award in a stretch limo," said a spokesman for the Plane Stupid anti-flights campaign group. "It's a bad joke."

Prince Charles said last year he would include a measure of how his activities affected the environment in his next annual accounts, due this summer.

He also vowed to cut his carbon emissions by abandoning chartered planes and trains in favour of scheduled services.