回答
どの言語でも、時代と共に変化します。船を指して英語の代名詞「she」を使うのは古くからの慣習です。しかし、今の風潮では、性別を表す「he」や「she」は好まれなくなってきています。LGBTQ運動が高まっている影響です。
例えば、人を指すのだけれども、男性なのか女性なのかわからない場合、もしくは性別が分からない場合、近年まで「he or she」のようなまどろっこしい言い方をしていましたが、今は無性別の三人称単数として「they」を使うように変わってきています。もともと「they」には単数の用法がありました。それが20世紀には忘れられ、21世紀に入ってから再び使われ始めています。会話だけでなく、ニュース記事にも普及しています。
下の2文はどちらも正しいです。
If you see a student on campus, you might want to ask him or her for directions to the basketball arena.
If you see a student on campus, you might want to ask them for directions to the basketball arena.
このように、性別を表す代名詞を避ける傾向が、今後ずっと続くと思われます。そのような時代背景の中で、船のことを「she」とする慣習が、いつまで続くか分かりません。私は個人的に「it」を使いたいと思いますが、「she」でないといけないという人もいるでしょう。どちらが正しい、間違いというのではなく、使う人が個人的に持っている信条や意見によって使い分ければ良いので、どちらも正しいです。
文法的に「女性名詞」「男性名詞」などという時の文法的性は、その名詞の文法的性によって同じ文中の動詞や形容詞など他の品詞が格変化したりするような文法構造を持つ言語(フランス語、ロシア語など)にあるものです。
英語には、そのような文法的性はないので、文法的に「女性名詞」「男性名詞」というものはありません。
ship について、shipという性別のない物体を女性視して「she/her/her/hers」の代名詞を充てるような言い方は、大昔にはあったことでしょうが、現在では性差別のニュアンスを含むような誤解を避けるために、ほとんど使われていません。
古くに書かれたものなどでなければ、England など国が主語になる場合は、それを抽象物として it とするか、そこにいる複数の市民を想定して their にするかなどが一般的でしょう。ship は物体ですので単体であれば it が一般的です。