Dynamic Content does not work right in Subject field

I'm trying to get this conditional merge to work.
[if:firstname][firstname], s[else]S[endif]peech Therapy Resources
but it merges  as:
, rRecover  (with no field value present)

So I tested the Solution # 2 from this page:

I'ts this:

   [if:firstname]Hey [firstname], c[else]C[endif]heck out or VIP offer![endif]

but I get:

    Hey , cChec   (with no value present)
or Hey bina, c   (with a field value present.

Join 150,000 companies around the world that use Campaign Monitor to run email marketing campaigns that deliver results for their business.

Get started for free