You've got the ID of your element wrong, so document.getElementById() returns null, hence the error you mention in the question.
However, if you fix the ID you will still get an error, because you are trying to call the jQuery .on() method directly on the DOM element. Use $("#Bimage").on(...) instead.
Also, within your event handler don't return a function, just do directly what you want to do. Your function also tries to use this.attr, which has the same problem as above that .attr() is a jQuery method but this is the DOM element, so use $(this).attr() instead.
Next, you don't want to just keep adding or subtracting 1 from position, because then you run past the beginning or end of the array. You probably want to "wrap" around to the other end of the array, so I'll show code for that.
Also, you can move the .attr() line to after the if/else rather than repeating exactly the same thing in each branch.
Finally, you probably don't want the whole page to scroll if the mouse is over the image when the wheel is turned, so call the event.preventDefault() method from within your event handler. (If you move the wheel when the mouse is somewhere else the page will scroll as normal.)
Putting all of that together:
var pages = ["./images/IMAGE1.png", "./images/IMAGE2.png", "./images/IMAGE3.png"],
    position = 0;
$("#Bimage").on('wheel', mouseHandler);
function mouseHandler(e) {
  e.preventDefault();
  if (e.originalEvent.deltaY < 0) {
    position = position === 0 ? pages.length - 1 : position - 1;
  } else {
    position = (position + 1) % pages.length;
  }
  $(this).attr("src", pages[position]);
  // log current image name for demo purposes, because
  // this snippet doesn't have access to the images
  console.log(pages[position]);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="Banner">
  <img id="Bimage" src="./images/Avatar.png" alt="Logo">
</div>
 
 
Update: In a comment, the OP asked about scrolling with the mouse anywhere in the window rather than just over the image. That is a matter of binding the wheel event to window and then not using this within the event handler (because this refers to the object the event handler was bound to, which was fine when bound to the image, but not right for window).
Expand/run the following snippet to see that in context:
var pages = ["./images/IMAGE1.png", "./images/IMAGE2.png", "./images/IMAGE3.png"],
    position = 0;
// save a reference to the image element, rather than continually
// reselecting it every time the `wheel` event occurs
var theImage = $("#Bimage");
$(window).on('wheel', mouseHandler);
function mouseHandler(e) {
  e.preventDefault();
  if (e.originalEvent.deltaY < 0) {
    position = position === 0 ? pages.length - 1 : position - 1;
  } else {
    position = (position + 1) % pages.length;
  }
  theImage.attr("src", pages[position]);
  // log current image name for demo purposes, because
  // this snippet doesn't have access to the images
  console.log(pages[position]);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="Banner">
  <img id="Bimage" src="./images/Avatar.png" alt="Logo">
</div>