That 350MB 'free' space on your primary drive is the slack space left over after installing XP, which defaults to using the entire disk for itself when you install it. Hence Linux tells you there is only 350MB 'free' space available. it does not count the space that is free within your Windows XP installation. (XP's partition)
So, what you need to do is resize
your Windows XP partition to make free space for Linux. I'd recommend freeing up about 5 to 7GB for Linux so you can play around a bit and still have plenty of room to use in both OS's.
For resizing NTFS partitions I can recommend Partition Magic, but I believe Mandrake 10 is also up to the job, although I didn't try it so I can't tell you how safe it is.
BACK UP YOUR DATA BEFORE YOU RESIZE PARTITIONS.
be warned, although in my own experience i've never had any data loss due to resizing or moving partitions it is
possible that something can go horribly wrong, and then you will have nothing.