I had this issue:

I have created a custom mail where I send a list of products. 
For this in my controller i concatenated a variable like this:

  

      $orderItems .= "<tr>
             <td>
               <p>" . $productSku . "</p>
               <p>" .  $differanceQty . "</p>                         
          </td>
        </tr>";

When I tried to send this variable from my controller to the email template in my email I received the HTML code instead of only the value.
So my custom email doesn't interpret my variable in the right way.

So I started looking for an answer and I didn't find anything related to this issue so that's why I posted this, maybe this will help someone.

the solution is to use the variable like this in the mail :

`{{var order}}` insead of  `{{htmlescape var=$order}}`