How do I override superfish styles? Do I copy the css files I want to override to a theme I am using?
This depends the implementation. If the super-fish functionality is already included in a theme (Example: Danland, Danblog), there is most probably already a .css section in the style sheet or a separate .css file related to superfish. If you modify these files, they might be overwritten if you make an update. Thus you optimally make the modification in a local file (local.css in our Example) by copying and modifying the css code.

If you install superfish separately you find all the instructions in the readme.txt of the module:

"How to style

If you know CSS, even basics of it, designing won't be a big challenge.

Here are some tips and tricks:

A) Always use a DOM inspector utility (such as Firebug).

B) Set the "Menu delay" option to a very high number such as 99999999. This will give you enough time to work with sub-menus.

C) If you are not using the built-in styles, set the "Style" option to "None".

D) Utilise the "Simple" style as reference; add the newly-created CSS file either to your theme CSS or as a new CSS file under the styles directory in the Superfish library (probably "sites/all/libraries/superfish/style"); putting it in the styles folder will automatically add it to the styles list in the block configuration."

More information can be found in the Superfish documentation at http://drupal.org/node/1125896" 

i.p. 4. within the Installation section

"Upgrade users need to delete the module folder (sites/all/modules/superfish) before uploading the new one. Also, if having any modified CSS files, just move them from sites/all/modules/superfish/css/extra to sites/all/libraries/superfish/style"