If I understand the way that RAID works, each drive needs to be the same size

Some controllers support mixing drive sizes, and using them in a "JBOD" configuration where no space is lost. Others will allow mixed sizes, but just use the same space on each one corrosponding to the smallest drive. The controllers that support this usually support upgrading the array size by pulling each drive one at a time and replacing it with a larger drive. Once the process completes, new free space appears and can be used. Again, this all depends on the array controller. I know some that the above upgrading process is the only way space can be added to an existing drive, and adding a drive only allows you to create a new array.