Canada's Prime Minister, Paul Martin, has warned the US that he will "not be dictated to", saying Canadians expected him to stand up for their country.
Mr Martin has lambasted the US approach to climate change
Mr Martin was responding to comments made by US Ambassador David Wilkins.
On Tuesday, the diplomat urged Canadian politicians to watch what they said about the US while campaigning for January's general election.
Mr Martin is fighting for re-election after his minority government was ousted in a no-confidence vote.
Relations between the two neighbouring countries suffered after Canada refused to support the US-led invasion of Iraq in 2003.
Last week, Mr Martin lambasted Washington over its decision not to join the global effort to combat climate change.
After calling on Canadian politicians to calm the rhetoric, the American ambassador said: "Canada never has to tear the US down to build itself up."
"All of us should hope it does not have a long-term impact on our relationship. And that's what you have to weigh scoring short-term political points against," he added.
Although Mr Wilkins did not mention Mr Martin by name, he suggested he was irked by his criticism of the US at the climate-change conference in Montreal last week.
But the Canadian PM said he was not trying to score political points by slamming the US but had every right to speak out in favour of his country's interests.
"I am not going to be dictated to as to the subjects I should raise," he told reporters.
"I will make sure that Canada speaks with an independent voice now, tomorrow and always, and you should demand nothing less from your prime minister."
Conservative leader Stephen Harper described Wilkins's criticisms as "inappropriate" and said no foreign ambassador should be intervening in another country's election campaign.
Canadians will go to the polls to elect a new parliament on 23 January, after Mr Martin lost a no-confidence vote. The minority Liberal government had been in power only 17 months.