To any who stumble upon the same problem as I did, here was my solution using the getframe function and its rect argument:
pos = app.Panel.Position;
%Changing the height and width ensures that the position arguments are
% within the bounds of the app window, I had issues with the panel position
% showing as out of bounds when calling getframe(). There is probably a
% cleaner way to avoid this issue.
pos(3) = app.UIFigure.Position(3)-pos(1)-1;
pos(4) = min(app.UIFigure.Position(4)-pos(2)-1, pos(4));
printFig = figure(Visible="off");
appFrame = getframe(app.UIFigure, pos);
imshow(appFrame.cdata)
exportgraphics(printFig, filepath)