I love Garageband; it's all I've used for recording music by myself, and it's worked great with my midi-controllers for playing live shows.
The only real issue I have with it is that it does not allow for the layering/coupling of keyboard voices while playing live.
For example, on almost every cheap Casio 88-key I've played, there's a function that allows the player to use two sounds simultaneously (e.g., a harpsichord and organ). This is not to be confused with splitting the keyboard down the middle -- each key played has both tones, to give you a thicker, more unique sound.
Obviously, this doesn't matter for recording, but for practicing and playing live it limits what I can do. For instance, I have one song that uses a grand piano sound coupled with a chorale sound for a full and haunting tone -- live, I am forced to choose between the two.
Does anyone know of any programs in the vein of Garageband that have this layering/coupling feature?
Obviously, I'm asking because I'd rather not buy another keyboard.