neh, for simple things there always are simple solutions!
as myocom already adviced you, you should have taken a look to MP3::Info :(
here is a simple oneliner that does all you wanted:
find2perl . -depth -eval 'my $t; -f and /\.mp3$/i and $t = get_mp3tag(
+$_) and rename $_, "$t->{ARTIST} - $t->{TITLE}.mp3"' |perl -MMP3::Inf
+o