Sua estrutura parece correta. Você está armazenando apenas news_id no campo de dados e essa é uma implementação mais inteligente, porque armazenar o documento completo causará muita movimentação e escrita pelo MongoDB toda vez que uma nova notícia for adicionada aos favoritos pelo usuário.
O motivo, que você provavelmente já sabe, é que um novo documento é criado a cada atualização. Referência:http://docs.mongodb.org/ manual/reference/method/db.collection.save/#upsert .
Também acho que como regra de negócio você deve restringir o número de notícias que podem ser definidas como favoritas pelo usuário. Permitir que essa lista cresça indefinidamente não será uma boa ideia para o design incorporado.
Caso você queira um número ilimitado de favoritos, é melhor criar uma coleção separada para isso e, em seguida, obter todos os favoritos de um usuário, use os operadores $match (no id do usuário) e $sort (de notícias) em uma consulta de agregação para obter a lista ordenada de itens de notícias favoritos para o usuário.