A simple workaround is to skip recipes entirely and instead write a function that explicitly constructs the plot the way you want. If this lives in a Makie extension, you retain essentially the same benefits. Most importantly, your package does not need to depend on Makie directly.
For example, in your case:
function some_plot(img)
image_size = reverse(size(img))
f2 = Figure(size = image_size, figure_padding = 0)
scene = LScene(f2[1,1])
imshow!(scene,img)
campixel!(scene)
scene.show_axis = false
display(f2)
end