expire_action confusion

I just can't figure this out.

I have this in my Players controller:
caches_action :show, :layout => false

I have a sweeper (that is getting called) that does this:
expire_action(:controller => :players, :action => :show, :id =>
player)

But this does not expire the cache - the element is still there and
getting served.

I have tried with memcache and file_store.

do you have this line in the controller too?

cache_sweeper => <name_of_sweeper>