I recommend doing it in GLSL. It's very little effort to implement (about 30–50 lines of code) and even on a modest GPU it'll run fast enough so you can explore different parameters interactively. As a bonus, you can get MIP-mapping for basically free — no more aliasing!
In case you don't want to learn OpenGL or Vulkan, you can use a tool such as Shadertoy.