#attached css in render array not working
You are saying, you have already rendered content array for the block and after that you are adding css to this block. If block array is already rendered then where you are applying this css because array is already rendered for you. Now you have two options here.

Option 1: Add custom CSS to your block
It should be something like this.

function foo_block_view($delta = '')
{
  if($delta == 'foo_delta')
  {
    $block = array
    (
      'subject' =&gt; t('Foo title'),
      'content' =&gt; array
      (
        '#markup' =&gt; '&lt;p&gt;' . t('Lorem ipsum text.') . '&lt;/p&gt;',
        '#attached' =&gt; array
        (
           'css' =&gt; array('path/to/my.css'),
        ),
      ),
    );
    return $block;
  }
}


Option 2: Add custom CSS to your page before this block rendered (Not a great option for your case).

$content = array();
$content['#attached']['css'] = array(
  $path . 'my.css' =&gt; array(
      'group' =&gt; CSS_AGGREGATE_THEME,
      'weight' =&gt; 999
    ),
  );
return $content;