I think you will find this code example on CardLayout very helpful. The problem you were having is instead of using:
card.addLayoutComponent(newGameL, "NewGame");
card.addLayoutComponent(roll1L, "OneRolled");
card.addLayoutComponent(snakeEyesL, "SnakeEyes");
card.addLayoutComponent(maxPointL, "MaxPoints");
you should use:
messageP.add(newGameL,"NewGame");
messageP.add(roll1L,"OneRolled");
messageP.add(snakeEyesL,"SnakeEyes");
messageP.add(maxPointL,"MaxPoints");
then you use:
card.show(messageP,"MaxPoints");
to switch to the appropriate JLabel.
or you can use:
card.next(messageP);
to rotate through the values.