get url() to translate the alias
No need for $options['alias'] = TRUE, that will prevent alias lookup.


  If you provide an internal path and $options['alias'] is set to TRUE,
  the path is assumed already to be the correct path alias, and the
  alias is not looked up.


Use the node/$nid path and let Drupal find the correct alias.

If that doesn't work, you could try manually passing the $options['language'] parameter


  'language': An optional language object. If the path being linked to
  is internal to the site, $options['language'] is used to look up the
  alias for the URL. If $options['language'] is omitted, the global
  $language_url will be used.


https://api.drupal.org/api/drupal/includes%21common.inc/function/url/7