The maximum upper limit for USB 2.0 is 48MB/s. This assumes every bit of every transfer is file data. This is literally impossible to achieve. You have various processing overhead, access delays, etc.. and you will never see transfer speeds that fast over USB 2.0.
Depending on the quality of the USB2.0 adapters (on your motherboard and in the external drive) 15-20MB/s sustained data rates actually sounds pretty good. I assume these are large files you are transferring? I would expect lots of smaller files to transfer at an even slower rate.
As for IDE to SATA at only 20-30MB/s, I assume you were referencing that to indicate that the USB 2.0 was slower? Or were you wondering if those were normal times as well? Depending on the data being transferred, 20-30MB/s is not surprising either way.