As a party to the North Atlantic Treaty, the United States is obligated to respond to any attack on Canada (or any other NATO member) under the terms of Article 5 (see
http://www.nato.int/docu/basictxt/treaty.htm).
The US has a history of violating treaties whenever it's convenient to it, but I doubt it would be in any national or political interest for the US to violate such a framework defense treaty of the 20th and 21st centuries.
The Canadian military has a well-earned reputation for prowess that predates its modern-day peacekeeping functions; Canadians were often used as the shock troops of the British Commonwealth, and earned a fearsome reputation on the battlefields of the world.