Вы правы. Грамматически и орфографически правильным будет название защита Каро – Канна (ср.: защита Алехина, защита Боголюбова, закон Бойля – Мариотта). Однако название с фамилией в им. падеже настолько устоялось в профессиональной среде, что менять его сейчас кажется нецелесообразным.