Why does drupal_add_css and drupal_add_html not always work? I have a drupal_add_css in my template.php, following a series of drupal_add_html calls.

The drupal_add_html calls, adding meta tags, work except for the first one (regardless of the order I put them in) which is for a meta generator tag, which the jquery form library I'm using requires. I've also tried getting it in by doing the call for markup rather than a tag...same...it doesn't appear.

The drupal_add_css call does not add the css file (I'm not aggregating), even if I specify the full url. If I add the css file to the list in the .info file, it appears, but I only want the file for a specific page, so I'm doing in the pre-render. When the file is not added, there is no reference to it in the page resources or network list as 404. It does get referenced in the js behaviors object that Drupal inserts.
It turns out that it's a known problem that core provides a generator metatag without an option of replacing or disabling it. The metatag module will do this, or removing it in a custom module via hooking html_head_alter.

I'm not quite certain why drupal_add_css would not work, but adding it with drupal_add_html_head worked.