How do I append a view to the node body in custom module?
So it turns out that the hook_node_view was all that was needed, but I don't know why it didn't work the first time:

/**
 * Implements hook_ENTITY_TYPE_view().
 */
function mymodule_node_view(array &amp;$build, EntityInterface $node, EntityViewDisplayInterface $display, $view_mode){
  // Get the arguments to send to the view. 
  $arguments = ...;
  if ($view = Views::getView('my_view')) {
    $display = ...
    $build['some_name'] = $view-&gt;buildRenderable($display,$arguments);
    $body = $node-&gt;get('body')-&gt;value;
    $node-&gt;set('body')-&gt;value = $body.render($build['some_name']);
  }
}