The official reason why Sydney was selected over Canberra is spelled out in the official APEC FAQ:
The scale of the APEC leaders meetings means it is impractical to host it in Canberra. For example, APEC requires approximately 25,000 room nights at hotels where leaders, delegates and media will be staying.That estimation is reached by muliplying visitors by the number of nights they will be staying. But the original estimate turns out to be wildly over-optimistic:
Two years ago Sydney hoteliers were contacted by the Federal Government and asked to reserve thousands of rooms for the summit.Of course, hotel rooms are also needed for security personnel, media, and so forth. But if the event had been scheduled for Canberra, there would have been less protestors, and therefore less police and security staff needed. There would also have been less political and media hangers-on taking junkets. The result would have been a more professional and focussed meeting.
But the expected 6000 delegates from the 21 APEC nations have not materialised. Instead, only about 4000 have said they are coming to town.
Given that this was long planned as a pre-election showpiece of Howard's international statesmanship, and given how much Howard has always favoured Sydney over Canberra, I'm thinking the PM's office should take the blame.