Existe uma maneira fácil, mas não óbvia, de fazer isso.
Supondo que você tenha a sincronização do Google configurada e que você já possa ver o seu Google Agenda no telefone, acesse https://www.google.com/calendar/syncselect (ele precisa do www; não precisa estar no seu iPhone). Você verá uma lista de dispositivos que está sincronizando. Selecione seu iPhone.
Na próxima tela, você pode escolher qual dos seus Calendários do Google deseja sincronizar com o seu iPhone. Marque a caixa ao lado dos calendários desejados e clique em Concluído ou Salvar ou o que quer que seja exibido na parte inferior.
Abra o iCal no seu iPhone e aguarde um pouco para sincronizar, e agora você deverá ver todos os seus Calendários do Google selecionados no seu iPhone.
Por algum motivo, você não pode alterar as cores dos calendários do iPhone, por isso altero as cores no Google Agenda para corresponder ao que o iPhone escolhe.
Costumava haver um limite de 5 calendários do Google que você podia sincronizar com o telefone, mas recentemente aumentaram o limite para 25.
Essas mesmas instruções se aplicam ao iPad e iPod touch. Eu configurei isso em todos os meus dispositivos e funciona como um encanto.
Isso está documentado pelo Google aqui: http://www.google.com/support/mobile/bin/answer.py?answer=139206