As you may be showing in your notes what you are calling back-ends may be different from what I was trained in within the business aspect of the IT profession. This could be how the gaming development community sees things.
However, a back-end to me is any support construct that provides data access support such as an RDBMS or a Message Queue.
Middle-Tiers are considered the layers that provide all the computations required by an application or the calls required to support requests or updates to data servers.
Graphic components such as MonoGame and the like would be considered middle-tiers since they do not support (in general) the acquisition or the manipulation of actual data in any way. However, they do provide graphic computations and interfaces to the necessary hardware components such as you mentioned like a GPU.
Even in a multiplayer game where a server is required, graphic operations would still be considered a middle-tier component since the basis of such components would reside on an application server (not a database server) or within the component structure of the front-end.
Front-ends are considered any component that provides interface support even if they are generated at the server. For example with ASP.NET WebForms where you use server-based controls, the markup for these controls that you implement into a web-page generate all of the extensions necessary at the application server tier. Nonetheless, technically all of this is considered front-end support.
I think we are just seeing things the way we have been primarily trained in development.