I know very little about numerical PDE, so I apologize if this equation is ill-formed (and I appreciate any corrections).
I am currently learning about Brownian motion. A classic result is that we can use Brownian motion hitting times to solve the heat equation. More specifically, if we consider a nice domain in $\mathbb{R}^n$ with smooth boundary, and release Brownian motion from a point $x$ in the domain, then one can compute the solution to the heat equation with specified boundary conditions by averaging over the points that the Brownian motion hits (weighted according to the hitting probability). More sophisticated version of this idea are possible with more complicated PDEs (e.g. survival time, and Feymann–Kac stuff).
I would like to program a PDE solver to simulate this problem myself. That it, I would like to determine the Brownian motion hitting times by solving the corresponding PDE. (This is more accurate than just running a Monte Carlo simulation with BM because there's no Monte Carlo error.) I am most interested in dimensions $n=2,3$, although I would like to be able to go higher.
I would like to do this with very curvy shapes: ellipsoids, spheres, a U, a filled-in smiley face, etc.
My understanding is that the last method rules out finite difference methods, or at least makes them very difficult to program (due to needing some extrapolation technique I do not really understand). The books I've flipped though seem to concentrate on rectangular domains.
I was recommended FD methods as the simplest way to get started with PDE solving. What is the next-simplest method (which gives relatively good results and is easiest to program) that will allow me to solve these problems on curvy domains?