Jest to cecha sterownika MongoDB. Nie akceptuje prostego First(), potrzebuje czegoś za nim. To właśnie widziałem podczas debugowania. Powinieneś więc albo kontynuować pracę z First()..., albo bezpośrednio wysłać zapytanie do swojego json:
var result = collection.Aggregate()
.Group(new JsonProjectionDefinition<People>(@" {
'_id': '$Name',
'docs': { '$push': '$$ROOT' },}"))
.Project<TopOne>(new JsonProjectionDefinition<BsonDocument>(@"{
'top_one': {
'$slice': ['$docs', 1]
} }"))
.ToList();