It's because you're deriving from MarkupExtension, the constructor for which is protected. In this case, the compiler doesn't auto-generate a default constructor. You must add it yourself.
In most cases, you shouldn't need to derive from MarkupExtension when creating a value converter. I'm assuming you have a reason for this, but if not, just remove the base class.