+1  A: 

Don't know if it makes a difference but I always add components to the Container directly:

String cardName = "college_choices";
Container parent = this.getParent();
parent.add(new CChoice(), cardName); 
CardLayout cl = (CardLayout)parent.getLayout(); 
cl.show(parent, cardName); 
camickr