Can't seem to translate field titles in plone 5

I am trying to get a list of field titles however I seem to get the i18n labels instead.
Whichever way I try to translate them I just get the label back. Not sure what I'm doing wrong.

@provider(IContextSourceBinder)
def fields_list(context):
    terms = []

    # need to look up all the possible fields we can set on all the content
    # types we might update in the given folder
    found = {}
    terms = [SimpleVocabulary.createTerm('', '', ''),
             SimpleVocabulary.createTerm('path', 'path', 'Path')]
    # path is special and allows us to import to dirs and export resulting path

    for fti in get_allowed_types(context):
        portal_type = fti.getId()
        schemas = iterSchemataForType(portal_type)
        for schema in schemas:
            for fieldid, field in getFieldsInOrder(schema):
                if fieldid not in found:
                    found[fieldid] = 1
                    #title = "%s (%s)" % (_(field.title), fieldid)
                    #import pdb; pdb.set_trace()
                    title = PLONE_MESSAGE_FACTORY(field.title)
                    title = Message(field.title.decode('utf8'), 'plone')
                    #from zope.i18n import translate
                    #title = translate(msgid=field.title, domain='plone', target_language='en')
                    terms.append(SimpleVocabulary.createTerm(fieldid, fieldid,
                                                             title))