Prueba a cambiar la clase 
Service    Código PHP:
    class Service{
    private $_id;
    private $_userComments = array();
    public function  __toString() 
    {
        $s .= $this->getId();
        $s .= ' | ';
        
        foreach ($this->_userComments as $num => $c) {
            $s .= $num . '. ' . $c->getComment() . '<br/>';
        }
        return $s;
    }
    public function addComment(UserComment $comment){
        $this->_userComments[] = $comment;
    } 
    
  A ver que tal te va ahora esto de $this->_userComments[] es lo mismo que tu array_push solo que a mi forma de ver más limpio y rapido trabajamos con la variable interna y ahorramos llamadas. Ya me diras. 
por cierto, el método 
getUserComments() no lo has puesto en el código y donde en teoria, tienes el problema.