One of the ways I use to make sure cakes are moist is to make the cake ahead of time and, when it is cool, freeze it overnight. Frost the cake while still frozen. Not only does this make the cake easier to frost but as it thaws the frosting acts as a seal to keep the moisture in.
This method never fails for me and I have gotten many compliments on how moist the cakes are.