Partial URL transliteration?
Certainly, you can call path_set_alias()  (or path_save() in Drupal 7) and set up whatever you want.  You could call these from within nodeapi() (or node_op..... in Drupal 7) and set up your path however you want.  But, I also think that drupal isn't case sensitive, so, 'foo/bar/BAZ' is the same as 'foO/bAr/BaZ' as far as it's concerned here, so, gotta be careful.

ADDITION:

If you want pathauto to do this, quick hack would be to edit pathauto.inc and do this:

  if (true) {
    $foo=drupal_strolower(dirname($output));
    $bar=basename($output);
    $output=$foo . '/' . $bar;
  } else {
    // Optionally convert to lower case.
    if (variable_get('pathauto_case', 1)) {
      $output = drupal_strtolower($output);
    }
  }


where it does just this:

// Optionally convert to lower case.
if (variable_get('pathauto_case', 1)) {
  $output = drupal_strtolower($output);
}


but it's up to you to more refine if(true) otherwise it will do this for every alias.