Buenas tardes Noelia,
Se me ocurren un par de posibles soluciones:
Tienes que tener en cuenta que en Puppeteer Sharp, como no podemos utilizar código de JavaScript nativo, todo se representa como un string. Por lo tanto, para expresiones como "3 + 4" sería correcto emplear EvaluateExpressionAsync, pero para funciones del tipo "async () => await window.nextGraphic()" o "() => 3 + 4" se debe utilizar EvaluateFunctionAsync. Te aconsejaría que probases con esta última opción.
En cualquier caso, si lo que estás empleando es una expresión, la manera recomendada por la documentación oficial de evaluar async es la siguiente (lo muestro con un ejemplo):
var someObject = await page.EvaluateExpressionAsync<string[]>(expression);
Por tanto, aconsejaría que en tu código añadieses el tipo de dato que devuelve la expresión a la que haces referencia: int, string, dynamic...etc. Empleando, por ejemplo dynamic en tu código:
var res = await page.EvaluateExpressionAsync<dynamic>("expresionEjecutar");
También te recomiendo que visites la documentación oficial de la librería que utilizas aquí en donde puedes encontrar ejemplos que te pueden ayudar como este.
¡Espero haberte servido de ayuda!