getField usage is the correct usage. Although you may not want the userlist display of the field and instead want profile view. Note API respect access and display permissions so if the field isn't set to display on profile for example then the getField API usage also won't display it. Some usages as follows.
Establish cbUser
Code:
$cbUser =& CBuser::getInstance( (int) $userId );
if ( ! $cbUser ) {
$cbUser =& CBuser::getInstance( null );
}
Linked Avatar Thumbnail
Code:
$avatar = $cbUser->getField( 'avatar', null, 'html', 'none', 'list', 0, true )
Linked Format Name
Code:
$name = $cbUser->getField( 'formatname', null, 'html', 'none', 'list', 0, true );
HTML Online Status (icon, etc..)
Code:
$online = $cbUser->getField( 'onlinestatus', null, 'html', 'none', 'profile', 0, true );