You can check your phone's internal settings to ensure that it is set to install apps on the SD card by default, and set it to do that if not.
You'll need ADB available on your PC, which is part of the Android SDK.
Download and install the SDK, and switch on USB debugging in your phone's settings.
Then, with the Android SDK installed, and your phone connected via USB with the USB Debugging mode switched on, enter the following commands:
adb devices
(check that ADB can see my phone, and start necessary services)
adb shell
(connects a shell to the phone)
pm getInstallLocation
(this tells us what you're currently set to. 0 = Auto, 1 = internal memory, 2 = SD Card)
pm setInstallLocation 2
(sets the default install location to SD card)
pm getInstallLocation
(run again to check that it is now set to the correct location])
exit
Safely Remove Hardware, unplug phone and all done, without any need for root!
(Instructions a combination of these previous answers)