Hm, IMHO, this should work, according to http://ez.no/doc/ez_publish/technical_manual/3_8/reference/template_functions/miscellaneous/cache_block
I don't see the fetch call in your code snipped.
The only thing, that i could think of: DId you check, that the url_alias of your path actually _is_ europe/france and not europe__1/france, for example? I guess, that subtree notation uses the url_alias, although this is not documented.
The issue described by the OP can be fixed by ensuring that the cache-block that specifies the subtree_expiry is not nested within another cache-block. That type of nesting will prevent the subtree_expiry from working correctly.