I think the error is located somewhere around here:
if ($arcresults) {
foreach ($arcresults as $arcresult) {
$url = get_month_link($arcresult->year, $arcresult->month);
$text = sprintf('%s %d', $month[zeroise($arcresult->month,2)], $arcresult->year);
echo get_archives_link($url, $text, '','<h3>','</h3>');
Now the archive links to: /11/2005/ for example and it needs to link to: /?m=200511