In order to get audible 20 Hz output, you need a large enclosure, so the speaker you want will not fit on your desktop. In order to get non-excrutiating output up to 20 kHz, you need a high quality (pricey) tweeter, not gonna happen on a $50 budget.
I would look for used audioengine or alesis small powered monitors on ebay or craigslist, you may get lucky with something like that.