Home in is correct. It bears resemblance to the concept of "home" in that the projectile (or a figurative counterpart) involved is getting to where it is meant to go. However, the variation "hone in" has increasingly been accepted to mean the same thing.
Also see definition #21 here of home, and this very helpful study on the two commonly confused expressions.
This reports the following:
Traditionally, a missile homes in (not hones in) on a target. Hone means "to sharpen." The verb home means "to move toward a goal" or "to be guided to a target." But some usage guides (see notes below) now recognize hone in on as an acceptable alternative to home in on.
An Ngram illustrates the wider usage of "home in on" than "hone in on", at least in current literature.
Bearing is regularly defined as the direction (relative to true north) in which your destination lies. If you could go in a straight line to your destination, this would be the most direct way of getting there.
You also have relative bearing, where the front of the vehicle is considered "north"; you'll see this when pilots claim, for example, that something is "at your 3 o'clock"; in naval terminology, port (left) and starboard (right) are always relative to the bow (front of the vessel).
Heading is the direction your face/nose/front/bow is currently pointing at (relative to true north), assuming default movement by your vehicle's impulse mechanism is forward. If there are no obstacles between you and your destination, and nothing aside from your vehicle's own impulse mechanism is moving it, heading should always be equal to bearing.
Course describes the entire planned route to get to your destination. A course correction implies that your planned route encountered an obstacle, and that you have to correct that plan.
As an example, let's assume a car is the vehicle, and it's navigating in a standard grid-like street structure. If you're at point (0, 0) with your car facing north and your destination is at (3, 3), your course would be "Three blocks north, then three blocks east". Your bearing at the start of your journey would be north-east, and your heading would be north, since that's the way your car is facing.
After you travel three blocks north, you're stopped at a red light. You should plan to turn right, to change your heading to east, since your bearing is now east. Your remaining course is "3 blocks east".
In aviation, where winds can and often will push you off-course, heading is rarely equal to bearing when the total travel distance is large. This makes for frequent course corrections to account for wind.
In my opinion, direction is the most basic term of all, and describes a directed vector between two points.
For your example, it seems like the proper phrasing would be "We are heading north, but we're being pushed off-course eastwards."
Best Answer
Both are certainly correct and both basically mean the same thing, but if you want to be precise and analyze them, heading in the right direction may be more specific to the current situation, like saying:
On the other hand, headed in the right direction may have more general meaning expressing a longer time scale, like for example: