Correct way to render fields from Entities?
The equivalent to the sample code you posted from the article, but for an entity type other than node would be:

$entities = entity_load('ENTITY_TYPE_NAME', array($YOUR_ENTITY_ID));
$entity = $entities[$YOUR_ENTITY_ID];
$field = field_get_items('ENTITY_TYPE_NAME', $entity, 'field_name');
$output = field_view_value('ENTITY_TYPE_NAME', $entity, 'field_name', $field[$delta]);


If you're doing this in a template, your entity's fields should have already been retrieved by the entity module's template_preprocess_entity() function and made available under the $content variable, so you shouldn't have to do all these steps in an overridden entity template.